hago esto para mostrarlas como video.
Código PHP:
aqui la que obtiene las urlsVer original
$urls = getUrls($textarea);//obtengo todas las urls que hay $i=0; foreach($urls as $url) { $rs["video"]=$url; $videos[$i]='<object width="150" height="150"><param name="movie" value="'.$rs["video"].'&hl=es&fs=1&rel=0"></param> <param name="type" value="application/x-shockwave-flash"> <param name="wmode" value="opaque" /> <embed src="'.$rs["video"].'&hl=es&fs=1&rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="150" height="150"></embed> </object>'; $urlList[$i]=$rs["video"]; $i++; } }
Código PHP:
puede leer todas las clases de urls que ven alli, que sean de youtube.Ver original
function getUrls($string) { $regex = '/https?\:\/\/[^\" ]+/i'; return ($matches[0]); }
mi problema es que pasa si solo el usuario agrega esto?
http://www.youtube.com/watch?v=
osea incompleta, pero la condición se cumple y el problema es que muestro el video en una lista de todas las urls que puso el usuario siempre y cuando sean de youtube.
como podria averiguar que los 11 caracteres de la id del video de youtube que siguen, son validos?
por que no solo es ese el detalle si no tambien este
http://www.youtube.com/watch?v=12345678910
osea que ponga un valor no valido ocasionando que se cree un marco mas en la lista donde deberia ir un video valido, entonces solo muestra el marco en blanco.
talvez si en vez de mostrarlo en divs cada video podria mostrarlo tal y como ponen las urls en el texto. pero pues yo lo quiero hacer asi.
hay alguna forma?