Hola amigo yo una vez hice eso.............. y me funciono de la siguiente manera.....
en un simple formulario php con un campo de texto usuario y un campo de texto para el enlace que da youtube....
Código PHP:
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$codigo = $_POST['texto'];
$cadena='watch?v=';
$pos=strpos($codigo,$cadena);
$pos= $pos + strlen($cadena);
$cadena=substr($codigo,$pos,100);
$_POST['video'] = $cadena;
$insertSQL = sprintf("INSERT INTO videos (username, video) VALUES (%s, %s)",
GetSQLValueString($_POST['username'], "text"),
GetSQLValueString($_POST['video'], "text"));
despues una vez guardado en la base de datos... se manda llamar solo la parte del codigo qu se guardo...
Código PHP:
<?php do { ?>
<object width="340" height="285"><param name="movie" value="http://www.youtube.com/v/<?php $row_video['video']; ?>&fs=1&color1=0xe1600f&color2=0xfebd01&border=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="[COLOR="Red"]http://www.youtube.com/v/<?php echo $row_video['video']; ?>[/COLOR]&fs=1&color1=0xe1600f&color2=0xfebd01&border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="340" height="285"></embed></object>
<span class="Estilo1"> ___</span>
<?php } while ($row_video = mysql_fetch_assoc($video)); ?>
ojala te sirva amigo.....