Autor
|
Tema: [SOLUCIONADO] Como crear Tags BBCode para YOUTUBE ?? (Leído 4,392 veces)
|
Diabliyo
Desconectado
Mensajes: 1.441
shell# _
|
Hola: En mi sistema web tengo varios TAGS BBCode disponibles, pero me gustaria poner a disposicion un TAGS BBCode de Youtube, para que los usuarios puedan postear el video de youtube y se vea ahi mismo en la pagina. Espero y me puedan ayudar !!! Mientras, les platicare mi metodo para crear BBCode: Primeramente, cualquier mensaje que se agrege ya sea por mi o tipo comentario pasa por una funcion llamada proteger_cadena(), esta protege la cadena para evitar Injeccion HTML, Injeccion SCRIPT e Injeccion SQL, despues esta misma funcion realiza el llamado de otra funcion que es msg2msgtags($cadena) que se encarga de hacer el BBCode. El codigo es el siguiente: Funcion msg2msgtags()<?php function msg2msgtags( $mensaje ) { if( strchr( $mensaje, "[b]" ) && strchr( $mensaje, "[/b]" ) ) { } if( strchr( $mensaje, "[i]" ) && strchr( $mensaje, "[/i]" ) ) { } if( strchr( $mensaje, "[u]" ) && strchr( $mensaje, "[/u]" ) ) { } if( strchr( $mensaje, "[center]" ) && strchr( $mensaje, "[/center]" ) ) { $mensaje= str_replace( "[center]", "<center>", $mensaje ); $mensaje= str_replace( "[/center]", "</center>", $mensaje ); } if( strchr( $mensaje, "[img]" ) && strchr( $mensaje, "[/img]" ) ) { $mensaje= str_replace( "[img]", "<img class=\"img_post\" src=\"", $mensaje ); } //OJO, los '\' solo los puse para que salieran en este POST, ya que si quito los '\' //el codigo sale CORTADO en este post... if( strchr( $mensaje, "\[code\]" ) || strchr( $mensaje, "\[/code\]" ) ) { $mensaje= str_replace( "\[code\]", "<div id=\"etiqueta_code\">", $mensaje ); $mensaje= str_replace( "\[/code\]", "</div>", $mensaje ); } //<object width="425" height="344"> //<param name="movie" value="http://www.youtube.com/v/Iur_NBn6b2k&hl=en&fs=1"></param> //<param name="allowFullScreen" value="true"></param> //<embed src="http://www.youtube.com/v/Iur_NBn6b2k&hl=en&fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed> //</object> /*if( strchr( $mensaje, "[youtube]" ) || strchr( $mensaje, "[/youtube]" ) ) { $mensaje= str_replace( "[youtube]", "", $mensaje ); $mensaje= str_replace( "[/youtube]", "", $mensaje ); }*/ if( strchr( $mensaje, "\n" ) ) { } if( strchr( $mensaje, "\t" ) ) { $mensaje= str_replace( "\t", " ", $mensaje ); } if( strchr( $mensaje, "<script>" ) ) { } if( strchr( $mensaje, "</script>" ) ) { } return $mensaje; } ?>
Funcion proteger_cadena()<?php function proteger_cadena( $cadena ) { $out=$cadena; if( strchr( $out, "<" ) ) //con esto vitamos injeccion de codigo if( strchr( $out, ">" ) ) //con esto vitamos injeccion de codigo $out= msg2msgtags($out); return $out; } ?>
Codigo de Ejemplo, antes de que el mensaje de guarde en la base de datos: <?php $msg= proteger_cadena($_POST["mensaje_noticia"]);
//generamos array de insercion mysql $valores= array( "autor"=>"'". $_SESSION["log_usr"]. "'", "titulo"=>"'". htmlentities($_POST["titulo_noticia"], ENT_QUOTES). "'", "mensaje"=>"'". htmlentities($msg, ENT_QUOTES). "'", "fecha"=>"'". time(). "'", "menu"=>"'". htmlentities($buf_menu["NOMBRE"], ENT_QUOTES). "'", "sección"=>"'". htmlentities($buf_sec["NOMBRE"], ENT_QUOTES). "'" );
unset($msg); if( insertar_bdd( "NOTICIAS", $valores )==0 ) echo "Error en la Insercion de los Datos."; else echo "Datos Agregados con Exito."; ?>
|
|
« Última modificación: 14 Agosto 2008, 01:02 am por Diabliyo »
|
En línea
|
|
|
|
Diabliyo
Desconectado
Mensajes: 1.441
shell# _
|
Sera que no me he explicado bien o que onda ??, vaya, lo que trato de hacer es algo exatamente igual a como si pusieramos un video youtube pero usando BBCode... Si se fijan un poquito, al contestar o poner un POST, aparece un icono con el logotipo de YOUTUBE y pone algo asi:
\[youtube=425,350\]\[/youtube\]
En fin, no es dificil poner eso, sino, como interpretarlo para que quede listo y visible el video ??
bye bye
|
|
|
En línea
|
|
|
|
Nakp
casi es
Ex-Staff
Desconectado
Mensajes: 6.336
he vuelto :)
|
pues... copia el embed de youtube y haces que la url que coloque entre las tags las ponga en src="aqui" vamos.. no es dificil si ha hiciste una para img es prácticamente lo mismo 
|
|
|
En línea
|
Ojo por ojo, y el mundo acabará ciego.
|
|
|
Diabliyo
Desconectado
Mensajes: 1.441
shell# _
|
pues... copia el embed de youtube y haces que la url que coloque entre las tags las ponga en src="aqui" vamos.. no es dificil si ha hiciste una para img es prácticamente lo mismo  Me pregunto: "has echo lo que yo pregunto ?"... Ya que si fuera asi de simple, no estuviera preguntando :S daaaa Por favor si no van a colaborar mejor evitense la pena y peresa de escribir :S !! bye bye
|
|
|
En línea
|
|
|
|
Freeze.
|
Estoy usando esto actualmente para mi BBCode  function BBcode($str) { '/\[b\](.*?)\[\/b\]/is', '/\[i\](.*?)\[\/i\]/is', '/\[u\](.*?)\[\/u\]/is', '/\[s\](.*?)\[\/s\]/is', '/\[url\=(.*?)\](.*?)\[\/url\]/is', '/\[url\](.*?)\[\/url\]/is', '/\[align\=(left|center|right|justify)\](.*?)\[\/align\=(left|center|right|justify)\]/is', '/\[img\](.*?)\[\/img\]/is', '/\[font\=(.*?)\](.*?)\[\/font\]/is', '/\[size\=(.*?)\](.*?)\[\/size\]/is', '/\[color\=(.*?)\](.*?)\[\/color\]/is', '/\[code\](.*?)\[\/code\]/is', '/\[quote\](.*?)\[\/quote\]/is', '/\[youtube](.*?)\[\/youtube\]/is', ); '<strong>$1</strong>', '<em>$1</em>', '<u>$1</u>', '<strike>$1</strike>', '<a href="$1">$2</a>', '<a href="$1">$1</a>', '<div style="text-align:$1;">$2</div>', '<img src="$1" />', '<span style="font-family:$1;">$2</span>', '<span style="font-size:$1;">$2</span>', '<span style="color: $1;">$2</span>', '<span id="code">$1</div>', '<span id="quote">$1</div>', '<span style="display:block;"><object width="350" height="275"><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="350" height="275"></embed></object></span>', ); $str = preg_replace ($simple_search, $simple_replace, $str); return $str; }
Y me funciona sin problemas  Aca te hago uno para tu youtube  A mi tambien me hace falta asi que no tengo perdida  //Esto lo agregas en el primer arrray: '/\[youtube](.*?)\[\/youtube\]/is', //Esto en el segundo array: '<span style="display:block;"><object width="350" height="275"><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="350" height="275"></embed></object></span>',
Me avisas si te funciona  Se usa como [youtube]Id-del-video[/youtube]  Tambien debes agregar esto: $str = str_replace("<br />","",$str); Antes del: return $str;
|
|
« Última modificación: 13 Agosto 2008, 22:57 pm por Freeze. »
|
En línea
|
|
|
|
Diabliyo
Desconectado
Mensajes: 1.441
shell# _
|
Me salvaste la vida Freeze, ahorita en un ratito mas cuelgo el codigo resultante  !!...
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
(Solucionado) Gmail, ¿reenviar correo para subscripciones de Youtube?
Dudas Generales
|
Eleкtro
|
4
|
3,271
|
14 Junio 2012, 19:13 pm
por Eleкtro
|
|
|
Ver tags ocultas en youtube
Dudas Generales
|
Orco12
|
6
|
14,683
|
6 Marzo 2013, 22:09 pm
por Orco12
|
|
|
BBCode para proteger links?
Sugerencias y dudas sobre el Foro
|
z3nth10n
|
1
|
2,236
|
16 Junio 2013, 15:12 pm
por Hiper@ctive
|
|
|
¿como hago un bbcode de Click'n'Load 2 en phpBB?
Desarrollo Web
|
bacanzito
|
0
|
1,683
|
21 Julio 2013, 00:54 am
por bacanzito
|
|
|
Un extrabajador de YouTube relata cómo un grupo de empleados conspiró para ...
Noticias
|
wolfbcn
|
0
|
1,275
|
2 Mayo 2019, 21:44 pm
por wolfbcn
|
|