Foros del Web » Programando para Internet » PHP »

Añadirle BBcodes a una pagina web

Estas en el tema de Añadirle BBcodes a una pagina web en el foro de PHP en Foros del Web. Ale, ya le puse la funcion htmlspecialchars al textarea era tan facil como esto: Código: $notTexto = htmlspecialchars($notTexto); ahora lo que necesito es poner los ...

  #1 (permalink)  
Antiguo 29/04/2009, 12:34
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Pregunta Añadirle bbcodes a mi web! ya probe de todo!

Ale, ya le puse la funcion htmlspecialchars al textarea era tan facil como esto:
Código:
$notTexto = htmlspecialchars($notTexto);
ahora lo que necesito es poner los codigos bb: yo tengo esto:
Código:
$notTexto = bbcodes($text);


y la funcion bbcodes:
Código:
<?php 

/* 
   Manual de como implementar BBcode 
   Creado por: OmaRPR y JuSePe 
   Para PHP-Hispano.net (#php_para_torpes) 
*/ 

// Para ejecutar esto pondras [echo bbcodes ($texto);] $texto es la variable que tiene el 
// contenido que le implantara los bbcodes. 

function bbcodes ($text) { 
    // Links para URLs. Formato: [web=http://php-hispano.net]PHPHispano[/web] 
    $finaltext = eregi_replace("\\[web=([^\\[]*)\\]([^\\[]*)\\[/web\\]", "<a target=\"_blank\" href=\"\\1\">\\2</a>", $text); 

    // Si no ponen atributos en [web]. Formato: [web]http://PHPHispano.net[/web] 
    $finaltext = eregi_replace("\\[web\\]([^\\[]*)\\[/web\\]","<a target=\"_blank\" href=\"\\1\">\\1</a>",$finaltext); 

    /* Este bucle lo hacemos por si ejempo usan u i y b en un solo texto :D */ 
    while($bucle < 5) { 
        // Para poner linea al texto. Formato: PHPHispano 
        $finaltext = eregi_replace("\\[u\\]([^\\[]*)\\[/u\\]","<u>\\1</u>", $finaltext); 

        // Para poner el text en italic. Formato: PHPHispano 
        $finaltext = eregi_replace("\\[i\\]([^\\[]*)\\[/i\\]","<em>\\1</em>", $finaltext); 

        // Para poner texto en negrita Formato: PHPHispano 
        $finaltext = eregi_replace("\\[b\\]([^\\[]*)\\[/b\\]","<strong>\\1</strong>", $finaltext); 

        $bucle++; 
    } 

    // Para centralizar un text. Formato: 
PHPHispano
$finaltext = eregi_replace("\\[center\\]([^\\[]*)\\[/center\\]","<center>\\1</center>", $finaltext); // Pone el texto como una cita. Formato: [cita]La calidad nunca es un accidente; siempre es el resultado de un esfuerzo de la inteligencia[/cita] $finaltext = eregi_replace("\\[cita\\]([^\\[]*)\\[/cita\\]","\n<div class=\"css_title\">Cita\n<div class=\"css\">\\1</div></div>", $finaltext); // Sacamos el color al codigo PHP. Formato:
Código PHP:
codigo 
preg_match_all ("/(\[)(php)(])(.*)(\[\/php\])/iU", $finaltext, $l); for ($i=0; $i< count($l[0]); $i++) { $finaltext = str_replace($l[0][$i],phpcojecolor($l[4][$i]),$finaltext); } // Retorno como queda el bbcode. return $finaltext; } function phpcojecolor ($php) { // Remplaza los <br \> por lineas. $php = str_replace("<br \>","\n",$php); ob_start(); // Abirmos el OB highlight_string($php); // Tiramos el codigo coloreado $cfinal = ob_get_contents(); // COjo el codigo que tire despues de haber abierto el ob ob_end_clean(); // Borro el ob para que no se vea en la web // A continuación hemos hecho uso de una función realizada por Anonimo y que copié de la web www.pastebin.com. Sirve para mostrar información sobre las funciones... [Proximas 7 lineas] $keycol=ini_get("highlight.keyword"); $manual="http://www.php.net/manual-lookup.php?lang=es&amp;pattern="; $cfinal=preg_replace( '{([\w_]+)(\s*</font>)'. '(\s*<font\s+color="'.$keycol.'">\s*\()}m', '<a href="'.$manual.'$1" title="Ayuda en PHP.net sobre $1" target="_blank">$1</a>$2$3', $cfinal); return "\n<div class=\"css_title\">C&oacute;digo PHP:\n<div class=\"css\">".$cfinal."</div></div>"; // Retorno el codigo PHP Coloreado } // Debes poner la siguiente clase en tu hoja de estilos o en su defecto en tu código html. // Estas clases es para que funciones lo de las citas y lo de mostrar codigo PHP :D // .css_title { // margin: 10px 5px 10px 15px; // font-size: 10px; // width: 90%; // // } // .css { // background: #DCDCDC; // border: 1px solid #8FB1EE; // border-left: 7px solid #8FB1EE; // font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; // font-size: 11px; // color: #000000; // padding: 5px; // width: 90%; // margin: 0px; // } ?>
pero siguen sin irme :( lo he probado cambiando muchas cosas. Por cierto si esto ayuda, el textarea al que quiero que afecten los bbcodes la variable de este es $notTexto
__________________
SumarioWeb
@sumarioweb
BasicNews

Última edición por fcdragons; 01/05/2009 a las 14:15
  #2 (permalink)  
Antiguo 29/04/2009, 13:16
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 15 años, 9 meses
Puntos: 32
Respuesta: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

Te refieres a esta funcion?

strip_tags — Elimina etiquetas HTML y PHP de una cadena

http://www.php.net/strip-tags
  #3 (permalink)  
Antiguo 29/04/2009, 13:22
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: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

lo que quiero es que solo sirvan las etiqetas <a> y <img>

y las demas etiquetas que los > y < y se vean como &gt; y como &lt;
__________________
SumarioWeb
@sumarioweb
BasicNews
  #4 (permalink)  
Antiguo 29/04/2009, 13:25
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 15 años, 9 meses
Puntos: 32
Respuesta: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

Mira la funcion Strip_tags te da la opcion de colocar etiquetas permitidas

strip_tags($texto, '<p>');

y esta funcion para convertirlas en &gt;

http://www.php.net/manual/es/functio...ecialchars.php
  #5 (permalink)  
Antiguo 29/04/2009, 13:34
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: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

si ya lei y lo vi es decir bloque todos las etiquetas menos <a> y <img>

pero como hago lo de las permitidas¿?

y tengo que poner el

Código PHP:
Ver original
  1. <?php
  2. $texto = '<p>Parrafo de prueba.</p><!-- Comentario --> Mas texto';
  3. echo strip_tags($texto);
  4. echo "\n";
  5.  
  6. // Se permite la etiqueta <p>
  7. echo strip_tags($texto, '<p>');
  8. ?>

ay me bloquea todas menos el <p> no ¿?

y podria hacer que no me convirtiera en &lt; y en &gt; las etiquetas que escogiera¿?
__________________
SumarioWeb
@sumarioweb
BasicNews
  #6 (permalink)  
Antiguo 29/04/2009, 13:49
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 15 años, 9 meses
Puntos: 32
Respuesta: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

$texto="<h1>Mi nombre es alguien</h1><br>Un parrafo<br>";
$quita=strip_tags($texto,"<h1><br>");

echo $quita;
  #7 (permalink)  
Antiguo 29/04/2009, 13:51
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
esque estoy haciendo una web de tutoriales y la gente enviara sus propios tutoriales, entonces quiero que solo funcionen las etiquetas html <a> y <img>

y de las demas etiquetas como <? o ?> o textarea los < y > se conviertan en &lt; y en &gt;

si pero no quiero que las elimine quiero que convierta en &lt; y en &gt; todos los < y > de todas las etiquetas menos de las basicas como <img> <font> <a> <b> <u><i><strike>, etcetera etcetera

nose si me explique, si no intentare explicarlo mas
__________________
SumarioWeb
@sumarioweb
BasicNews

Última edición por GatorV; 29/04/2009 a las 15:29
  #8 (permalink)  
Antiguo 29/04/2009, 15:29
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: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

Usa htmlscpecialchars para cambiar las etiquetas en sus entidades HTML.

Saludos.
  #9 (permalink)  
Antiguo 30/04/2009, 07:47
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: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

si yo quiero eso de html special chars, pero que a los < y > de las etiquetas que yo elija no se conviertan en &lt; o en &gt;
__________________
SumarioWeb
@sumarioweb
BasicNews
  #10 (permalink)  
Antiguo 30/04/2009, 08:25
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: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

Pues puedes hacer dos cosas, una es una expresion regular para cambiar las entidades pero separando las que si quieres permitir, o usar BBCode para solo permitir el codigo que quieras.

Saludos.
  #11 (permalink)  
Antiguo 30/04/2009, 08:27
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: deshabilitar poder poner <textarea> </textarea> en el formulario de envio

mmm eso del bb code suena bien , pero como puedo implementar bbcode a una pagina web¿?
__________________
SumarioWeb
@sumarioweb
BasicNews
  #12 (permalink)  
Antiguo 30/04/2009, 09:09
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: Añadirle BBcodes a una pagina web [SIN SOLUCIONAR]

Si buscas en google puedes encontrar muy buenos recursos como: http://www.desarrolloweb.com/articulos/2438.php

Saludos.
  #13 (permalink)  
Antiguo 30/04/2009, 09:14
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: Añadirle BBcodes a una pagina web

Código PHP:
Ver original
  1. <?
  2. function BBcode($texto){
  3.    $texto = htmlentities($texto);
  4.    $a = array(
  5.       "/\[i\](.*?)\[\/i\]/is",
  6.       "/\[b\](.*?)\[\/b\]/is",
  7.       "/\[u\](.*?)\[\/u\]/is",
  8.       "/\[img\](.*?)\[\/img\]/is",
  9.       "/\[url=(.*?)\](.*?)\[\/url\]/is"
  10.    );
  11.    $b = array(
  12.       "<i>$1</i>",
  13.       "<b>$1</b>",
  14.       "<u>$1</u>",
  15.       "<img src=\"$1\" />",
  16.  
  17.        "<a href=\"$1\" target=\"_blank\">$2</a>"
  18.    );
  19.    $texto = preg_replace($a, $b, $texto);
  20.       $texto = nl2br($texto);
  21.    return $texto;
  22. }
  23. ?>


Esto lo coloco en la pagina de index o en la pagina donde esta el formulario para enviar el articulo¿?
__________________
SumarioWeb
@sumarioweb
BasicNews
  #14 (permalink)  
Antiguo 30/04/2009, 09: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: Añadirle BBcodes a una pagina web

Pues lo pones donde quieras reemplazar el texto por el BBCode, generalmente al mostrar tu articulo.

Saludos.
  #15 (permalink)  
Antiguo 30/04/2009, 09:21
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
aver, entonces lo tendria que poner en el indice que es donde estan todos los articulos

o lo tendria que poner en add-noticia.php que es donde envio el articulo...

probare en el indice

y ahora alguien me explica como va la funcion html special chars¿?
__________________
SumarioWeb
@sumarioweb
BasicNews

Última edición por GatorV; 30/04/2009 a las 12:00
  #16 (permalink)  
Antiguo 30/04/2009, 11:39
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
Pregunta htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

Alguien me puede explicar como va el htmlspecialchars ese porque lo que me dice en php.net no lo entiendo :(
__________________
SumarioWeb
@sumarioweb
BasicNews
  #17 (permalink)  
Antiguo 30/04/2009, 11:41
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 9 meses
Puntos: 2114
Respuesta: htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

Se como cualquier otra función:
Código php:
Ver original
  1. funcion($variable)

Puedes también hacer un echo y cualquier cosa. Luego la mayoría de funciones tienen datos opcionales, otras requeridas, etc...
  #18 (permalink)  
Antiguo 30/04/2009, 11:48
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: htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

esque nose nada yo despues la variable como la pongo para un textarea
__________________
SumarioWeb
@sumarioweb
BasicNews
  #19 (permalink)  
Antiguo 30/04/2009, 11:53
 
Fecha de Ingreso: abril-2009
Mensajes: 19
Antigüedad: 15 años
Puntos: 0
Respuesta: htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

lo pones asi:
Código PHP:
Ver original
  1. echo htmlspecialchars("<a>hola</a>");

eso, en vez de imprimir un link, va a imprimir la cadena:

&lt;a&gt;Hola&lt;/a&gt

tambien podes hacer asi:

Código PHP:
Ver original
  1. $variable="<a>Hola</a>";
  2. echo htmlspecialchars($variable);

y te va a imprimir lo mismo..

saludoss
  #20 (permalink)  
Antiguo 30/04/2009, 12:00
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: Añadirle BBcodes a una pagina web

De la misma manera usalo antes de pasarlo por tu función BBCode para limpiar el HTML y luego aplicar el BBCode.

Saludos.
  #21 (permalink)  
Antiguo 30/04/2009, 12:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

¿como lo pones en un <textarea/> ???

primero, no se "pone" .... se imprime!!

y puedes hacerlo donde desees, mira:

Código PHP:
<?php echo '<p>' foo($bar) . '</p>'?>

...

<textarea><?php echo candy($does); ?></textarea>
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #22 (permalink)  
Antiguo 30/04/2009, 12:19
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: htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

es decir que tu eliges lo que quieres que te ponga en caracteres especiales¿?
__________________
SumarioWeb
@sumarioweb
BasicNews
  #23 (permalink)  
Antiguo 30/04/2009, 12:22
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

mmm.... no es "elegir"

las funciones casi siempre devuelven un resultado, si quieres que algo resulte afectado/cambiado ... debes pasarlo por una funcion para que devuelva algo!

osea, si... ya, tu eliges....


suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #24 (permalink)  
Antiguo 30/04/2009, 12:46
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: htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

jeje sigo sin pillarlo ¬¬
__________________
SumarioWeb
@sumarioweb
BasicNews
  #25 (permalink)  
Antiguo 30/04/2009, 13:21
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: htmlspecialchars() como se pone ¿? no entiendo loq ue me dice php.net x(

mmm....

¿cuanto es 1 + 2??

R = 3

Código PHP:
<?php
function suma($a$b)
{
  return 
$a $b;
}

echo 
suma(3,4); // 7

$x 2;
$y 3*$x;

$c suma($x,$y);

echo 
"<p>$c</p>"// <p>8</p>

?>

...

<textarea><?php echo suma(1,2); ?></textarea>
así es como funcionan, las funciones.... ¿se entiende?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #26 (permalink)  
Antiguo 30/04/2009, 14:16
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: Añadirle BBcodes a una pagina web

Temas unidos porfavor continua sobre el mismo hilo
  #27 (permalink)  
Antiguo 30/04/2009, 15:14
Avatar de fcdragons  
Fecha de Ingreso: agosto-2008
Ubicación: echo $_REQUEST['ubicacion'];
Mensajes: 474
Antigüedad: 15 años, 8 meses
Puntos: 13
pero esque yo quiero que el htmlspecialchars() afecte a un textarea si lo pongo asi:
<textarea><?php echo htmlspecialchars($variable); ?></textarea> afectara al textarea¿?
vaya ... de php TT como me cuesta ... ojala aprenda pronto

vaaale ya se mas o menos como va pero como hago paa que TODAS las etiquetas que se pongan en un textarea sean de esta forma &lt;textarea&gt;Hola&lt;/textarea&gt;

pa que lo haga en todas las etiquetas de dentro el textarea que pongan los otros usuarios

seria con print¿?

Código PHP:
print '<i><font size=2 face=verdana><blockquote> ' $campo[7] . ' </blockquote></font></i>'
aunque nose donde colocar el print si fuera con print

Al final consegui añadir la funcion htmlspecialchars ^^ estoy feliz ahora hay que conseguir que me funcionen los BBcodes
__________________
SumarioWeb
@sumarioweb
BasicNews

Última edición por GatorV; 03/05/2009 a las 16:58
  #28 (permalink)  
Antiguo 01/05/2009, 08:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Añadirle BBcodes a una pagina web

por Dios, fcdragons...


el foro es publico y por ende, no se deben borrar los temas.. ya que puede ser de utilidad para alguien mas!!!

ademas que poca vergüenza tienes, recién abrí el tema y me dolieron los ojos.... no seas así.... se consciente nadie tiene ojos tan grandes como tus letras... (eso si es una gran falta de respeto)


__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #29 (permalink)  
Antiguo 01/05/2009, 11:50
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 queria que lo tomaran como falta de respeto ): ahora lo edito

y pateketrueke te envie un mail aver si me ayudas con los bbcodes

esque los pongo y no me van

Ale, ya le puse la funcion htmlspecialchars al textarea era tan facil como esto:
Código:
$notTexto = htmlspecialchars($notTexto);
ahora lo que necesito es poner los codigos bb: yo tengo esto:
Código:
$notTexto = bbcodes($text);


y la funcion bbcodes:
Código:
<?php 

/* 
   Manual de como implementar BBcode 
   Creado por: OmaRPR y JuSePe 
   Para PHP-Hispano.net (#php_para_torpes) 
*/ 

// Para ejecutar esto pondras [echo bbcodes ($texto);] $texto es la variable que tiene el 
// contenido que le implantara los bbcodes. 

function bbcodes ($text) { 
    // Links para URLs. Formato: [web=http://php-hispano.net]PHPHispano[/web] 
    $finaltext = eregi_replace("\\[web=([^\\[]*)\\]([^\\[]*)\\[/web\\]", "<a target=\"_blank\" href=\"\\1\">\\2</a>", $text); 

    // Si no ponen atributos en [web]. Formato: [web]http://PHPHispano.net[/web] 
    $finaltext = eregi_replace("\\[web\\]([^\\[]*)\\[/web\\]","<a target=\"_blank\" href=\"\\1\">\\1</a>",$finaltext); 

    /* Este bucle lo hacemos por si ejempo usan u i y b en un solo texto :D */ 
    while($bucle < 5) { 
        // Para poner linea al texto. Formato: PHPHispano 
        $finaltext = eregi_replace("\\[u\\]([^\\[]*)\\[/u\\]","<u>\\1</u>", $finaltext); 

        // Para poner el text en italic. Formato: PHPHispano 
        $finaltext = eregi_replace("\\[i\\]([^\\[]*)\\[/i\\]","<em>\\1</em>", $finaltext); 

        // Para poner texto en negrita Formato: PHPHispano 
        $finaltext = eregi_replace("\\[b\\]([^\\[]*)\\[/b\\]","<strong>\\1</strong>", $finaltext); 

        $bucle++; 
    } 

    // Para centralizar un text. Formato: 
PHPHispano
$finaltext = eregi_replace("\\[center\\]([^\\[]*)\\[/center\\]","<center>\\1</center>", $finaltext); // Pone el texto como una cita. Formato: [cita]La calidad nunca es un accidente; siempre es el resultado de un esfuerzo de la inteligencia[/cita] $finaltext = eregi_replace("\\[cita\\]([^\\[]*)\\[/cita\\]","\n<div class=\"css_title\">Cita\n<div class=\"css\">\\1</div></div>", $finaltext); // Sacamos el color al codigo PHP. Formato:
Código PHP:
codigo 
preg_match_all ("/(\[)(php)(])(.*)(\[\/php\])/iU", $finaltext, $l); for ($i=0; $i< count($l[0]); $i++) { $finaltext = str_replace($l[0][$i],phpcojecolor($l[4][$i]),$finaltext); } // Retorno como queda el bbcode. return $finaltext; } function phpcojecolor ($php) { // Remplaza los <br \> por lineas. $php = str_replace("<br \>","\n",$php); ob_start(); // Abirmos el OB highlight_string($php); // Tiramos el codigo coloreado $cfinal = ob_get_contents(); // COjo el codigo que tire despues de haber abierto el ob ob_end_clean(); // Borro el ob para que no se vea en la web // A continuación hemos hecho uso de una función realizada por Anonimo y que copié de la web www.pastebin.com. Sirve para mostrar información sobre las funciones... [Proximas 7 lineas] $keycol=ini_get("highlight.keyword"); $manual="http://www.php.net/manual-lookup.php?lang=es&amp;pattern="; $cfinal=preg_replace( '{([\w_]+)(\s*</font>)'. '(\s*<font\s+color="'.$keycol.'">\s*\()}m', '<a href="'.$manual.'$1" title="Ayuda en PHP.net sobre $1" target="_blank">$1</a>$2$3', $cfinal); return "\n<div class=\"css_title\">C&oacute;digo PHP:\n<div class=\"css\">".$cfinal."</div></div>"; // Retorno el codigo PHP Coloreado } // Debes poner la siguiente clase en tu hoja de estilos o en su defecto en tu código html. // Estas clases es para que funciones lo de las citas y lo de mostrar codigo PHP :D // .css_title { // margin: 10px 5px 10px 15px; // font-size: 10px; // width: 90%; // // } // .css { // background: #DCDCDC; // border: 1px solid #8FB1EE; // border-left: 7px solid #8FB1EE; // font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; // font-size: 11px; // color: #000000; // padding: 5px; // width: 90%; // margin: 0px; // } ?>
pero siguen sin irme :( lo he probado cambiando muchas cosas. Por cierto si esto ayuda, el textarea al que quiero que afecten los bbcodes la variable de este es $notTexto
__________________
SumarioWeb
@sumarioweb
BasicNews

Última edición por GatorV; 03/05/2009 a las 16:59
  #30 (permalink)  
Antiguo 01/05/2009, 14:26
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Añadirle BBcodes a una pagina web

y ¿porque no te funciona??

¿¿te sale algún error??

¿¿o que sucede?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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 05:05.