Foros del Web » Programando para Internet » PHP »

BBcode de youtube no me va! porque sera

Estas en el tema de BBcode de youtube no me va! porque sera en el foro de PHP en Foros del Web. Hola, quiero añadirle el BBcode de youtube a mi web que sería así Tengo muchos codigos bb ya pero me falta el de youtube, que ...
  #1 (permalink)  
Antiguo 04/05/2009, 23:59
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Exclamación BBcode de youtube no me va! porque sera

Hola, quiero añadirle el BBcode de youtube a mi web que sería así


Tengo muchos codigos bb ya pero me falta el de youtube, que cuando uso youtube y el url del video me sale un cuadrado blanco. Sera porque tengo que añadirle el object tambien al codigo?

Bueno, les dejo mi codigo BB
Código:
<? 
function BBcode($texto){ 
   $a = array( 
      "/\[i\](.*?)\[\/i\]/is", 
      "/\[b\](.*?)\[\/b\]/is", 
      "/\[u\](.*?)\[\/u\]/is", 
	  "/\[tachado\](.*?)\[\/tachado\]/is",
	  "/\[center\](.*?)\[\/center\]/is",
	  "/\[align=left\](.*?)\[\/align\]/is",
	  "/\[align=right\](.*?)\[\/align\]/is",
      "/\[img\](.*?)\[\/img\]/is", 
      "/\[url=(.*?)\](.*?)\[\/url\]/is",
	  "/\[url\](.*?)\[\/url\]/is",
	  "/\[youtube\](.*?)\[\/youtube\]/is",
	  "/\[php\](.*?)\[\/php\]/is"
   ); 
   $b = array( 
      "<i>$1</i>", 
      "<b>$1</b>", 
      "<u>$1</u>", 
	  "<strike>$1</strike>",
	  "<p align='center'>$1</p>",
	  "<p align='left'>$1</p>",
	  "<p align='right'>$1</p>",
      "<img src=\"$1\" />", 

      	"<a href=\"$1\" target=\"_blank\">$2</a>",
      	"<a href=\"$1\" target=\"_blank\">$1</a>",
		"<embed src=\"$1\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"425\" height=\"344\"></embed>",
		"<div class=\"css_title\">C&oacute;digo PHP:\n<div class=\"css\">$1</div></div>"
   ); 
   $texto = str_replace("<br \>","\n",$texto);
   $texto = preg_replace($a, $b, $texto); 
      $texto = nl2br($texto); 
   return $texto; 
} 
?>

Esta marcado en negritga y rojo lo que es del youtube ;) Espero que me puedan ayudar
Un saludo y gracias
__________________
SumarioWeb
@sumarioweb
BasicNews
  #2 (permalink)  
Antiguo 05/05/2009, 08:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: BBcode de youtube no me va! porque sera

Entra a la pagina de Youtube, y fijate como es que tienes que hacer el embed lo puedes encontrar en cualquier video al lado derecho.

Saludos.
  #3 (permalink)  
Antiguo 05/05/2009, 09:45
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Respuesta: BBcode de youtube no me va! porque sera

ya lo puse y tampoco me va... mira asi lo puse
"<object width=\"660\" height=\"525\"><param name=\"movie\" value=\"$1\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\"$1\" type=\"application/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"660\" height=\"525\"></embed></object>",
__________________
SumarioWeb
@sumarioweb
BasicNews
  #4 (permalink)  
Antiguo 05/05/2009, 09:50
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: BBcode de youtube no me va! porque sera

Cuando imprimes ya el HTML generado como es que ves que queda el codigo resultante? (Ya en el HTML).

Saludos.
  #5 (permalink)  
Antiguo 05/05/2009, 09:55
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Respuesta: BBcode de youtube no me va! porque sera

como aver no entendi, yo cuando en mi textarea pongo [ youtube ](link del video)[ / youtube ] me sale en blanco, un cuadrado en blanco, que es el video pero no se ve :(

Gracias por tu ayuda GatorV
__________________
SumarioWeb
@sumarioweb
BasicNews
  #6 (permalink)  
Antiguo 05/05/2009, 10:42
 
Fecha de Ingreso: enero-2008
Ubicación: Estado de México, México
Mensajes: 476
Antigüedad: 16 años, 3 meses
Puntos: 11
Respuesta: BBcode de youtube no me va! porque sera

lo que esta pasando es que tienes que llamar al objeto completo no solo el embed del video intenta usando todo desde el object
__________________
"Si necesitas ayuda para tu foro en phpBB solo buscanos en google como montatuforo y la obtendras"
  #7 (permalink)  
Antiguo 05/05/2009, 10:43
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: BBcode de youtube no me va! porque sera

Por eso al generar la pagina HTML y ver el resultado selecciona en tu browser, boton derecho y selecciona Ver Codigo fuente, inspecciona el HTML generado y vas a poder ver el porque te marca el error.

Saludos.
  #8 (permalink)  
Antiguo 05/05/2009, 10:58
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
no si se ve el link que pongo y todo
el problema nose porque sera
y no hace falta el object, lo mire de taringa

ya me va, ya se porque es
los links tienen que ser asi http://www.youtube.com/v/nD19Os5oUTg
y no asi: http://www.youtube.com/watch?v=EqIV3ixUnhQ

pero nose de donde sacan los videos de ese tipo de link a mi me salen como el de arriba :S
__________________
SumarioWeb
@sumarioweb
BasicNews

Última edición por GatorV; 05/05/2009 a las 11:19
  #9 (permalink)  
Antiguo 05/05/2009, 11:19
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: BBcode de youtube no me va! porque sera

Si te fijas es el mismo ID del video solo que en lugar de ser watch?v=, es /v/, vas a tener que escribir una expresion regular para hacer el match de esos caracteres y extraer el ID.

Saludos.
  #10 (permalink)  
Antiguo 05/05/2009, 11:54
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Como podria hacer esa expresion¿?

Ahora lo que yo quiero hacer, es convertir los que sean watch?v= en watc/v/

habria alguna forma de hacerlo¿? alguna funcion o algo¿?
__________________
SumarioWeb
@sumarioweb
BasicNews

Última edición por GatorV; 05/05/2009 a las 14:25
  #11 (permalink)  
Antiguo 05/05/2009, 14:27
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: BBcode de youtube no me va! porque sera

Si la hay, tienes que hacer una expresion regular para transformar, revisa lo siguiente: http://www.forosdelweb.com/f18/aport...s-pcre-646110/

Saludos.
  #12 (permalink)  
Antiguo 05/05/2009, 14:29
 
Fecha de Ingreso: diciembre-2007
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 2
Respuesta: BBcode de youtube no me va! porque sera

usa la funcion str_replace y busca watch?v= y reemplaza por /v/ y listo te keda el link :D

saludos
  #13 (permalink)  
Antiguo 05/05/2009, 15:35
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Respuesta: BBcode de youtube no me va! porque sera

es decir que si pongo
str_replace("watch?v=","/v/");

asi me cambiara todos los links¿?
Gracias ;)
Me voy a dormir, ojala puedan responderme
__________________
SumarioWeb
@sumarioweb
BasicNews
  #14 (permalink)  
Antiguo 05/05/2009, 15:59
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: BBcode de youtube no me va! porque sera

Intentalo, si tienes algun problema no dudes en publicar de regreso.

Saludos.
  #15 (permalink)  
Antiguo 05/05/2009, 23:16
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Que tendria que hacerlo, asi:

$rowNot['notTexto'] = str_replace("watch?v=", "/v/");

o asi:
echo str_replace($rowNot['notTexto'], "watch?v=, "/v/");


si lo hago de la 2ª manera, como ya tngo otras funciones me sale asi
echo BBcode(nl2br(substr(str_replace($rowNot['notTexto'], "watch?v=", "/v/",0, 500))));

lo que pasa es que asi me da error :S
me dice Fatal error: Only variables can be passed by reference in /home/a5403903/public_html/news/list-noticia.php on line 82

La linea 82 es la del codigo este :S
traduccion: solo las variables pueden pasar por referencias en...... en la linea 82
Aver si me pueden ayudar

que tendria que poner primero, el substr o el str_replace¿? o ninguno de los 2.

Como va¿? TT

esque ya es casi lo ultimo que me queda para acabar mi web. llevo mucho tiempo.

Espero que me puedan ayudar
Gracias
__________________
SumarioWeb
@sumarioweb
BasicNews

Última edición por GatorV; 06/05/2009 a las 09:22
  #16 (permalink)  
Antiguo 06/05/2009, 07:30
Avatar de trasgukabi  
Fecha de Ingreso: septiembre-2004
Mensajes: 2.749
Antigüedad: 19 años, 8 meses
Puntos: 18
Respuesta: BBcode de youtube no me va! porque sera

¿Y no podrías probar? no te explota el ordenador, tranquilo.
  #17 (permalink)  
Antiguo 06/05/2009, 08:08
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Respuesta: BBcode de youtube no me va! porque sera

En realidad, con ese BBcode no estás insertando videos de youtube. Estás permitiendo insertar casi cualquier flash de cualquier sitio.

Una manera bastante eficiente, fácil y que te quita de encima muchos problemas es controlar la dirección y sólo pedir el id del video:

Código html:
Ver original
  1. [youtube]qGW_yiXuluw[/youtube]

Tampoco es mala idea utilizar directamente el código de <object> y <embed> que te da youtube para insertar sus videos.

Entonces, la línea donde reemplazas quedaría:
Código PHP:
"<object width=\"425\" height=\"344\"><param name=\"movie\" value=\"http://www.youtube.com/v/$1\"></param><param name=\"wmode\" value=\"transparent\"></param><embed src=\"http://www.youtube.com/v/$1\" type=\"application/x-shockwave-flash\" wmode=\"transparent\" width=\"425\" height=\"344\"></embed></object>"
Saludos,
  #18 (permalink)  
Antiguo 06/05/2009, 09:42
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Respuesta: BBcode de youtube no me va! porque sera

dios!!!! muchas gracias jpinedo te has ganado karma ;)
de veras me ayudaste mucho


Cita:
¿Y no podrías probar? no te explota el ordenador, tranquilo.
emmm sin comentarios, llevo mas de 1 hora probando y nada ...
__________________
SumarioWeb
@sumarioweb
BasicNews
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:30.