Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/08/2007, 03:52
Avatar de IMAC/
IMAC/
 
Fecha de Ingreso: octubre-2005
Mensajes: 738
Antigüedad: 18 años, 6 meses
Puntos: 14
De acuerdo Extraer videos youtube de un foro y guardar en base de datos.

Hola.
La cuestión está en que quiero que todo video de youtube insertado en un foro pase a una base de datos para así poder hacer posteriormente una sección en la web dedicada a videos insertados en el foro.

Bien, para insertar videos de youtube en el foro hay un icono. Una vez se hace click en él y se pegan los 11 caracteres despues de v= que tiene todo video de youtube, un video como este:
http://www.youtube.com/watch?v=LxuShh2sd9c
quedaría así:
[youtube=412,327]LxuShh2sd9c[/youtube]

Yo por ahora he conseguido extraer los 11 caracteres de un post cualquiera con un solo video de youtube.
Tal vez es un poco chapucero lo que hice, pero funciona :) la cosa quedó así:

Código PHP:
<?

$video
=mysql_query("select body,ID_MSG from smf_messages where ID_BOARD like '12' order by posterTime");
$row_video=mysql_fetch_array($video)
$body=$row_video["body"];        
$id=$row_video["ID_MSG"];    
$busco'[youtube=412,327]';
$busco2'[/youtube]';
echo 
$busco;
if(
$posicion === false){
 
//nada
 
}else{
$texto=strpos($body$busco); //saca la posición de $busco en $body
$texto2=strpos($body,$busco2);//saca la posición de $busco2 en $body
echo '<br>';

$texto3=substr_replace($body''$texto2);
$texto4=substr_replace($texto3''0$texto+17); //esto de 17 son los caracteres que tiene [youtube=412,327]
//también se podía haber echo con $texto4=substr_replace($texto3, '', 0, -11);  sabiendo que todo video de youtube tiene 11 letras.
echo '<br>';
echo 
$texto4;  //imprime los 11 caracteres del video.

?>
Me gustaría saber cómo podría hacer para sacar 2 videos de un mismo post. Puesto que con lo que hice solo me saca uno...

Y como aún no he pensado como insertar en la base de datos los videos... pues alguna sugerencia.
Puesto que los videos en el foro se postean con frecuencia...

Gracias.