Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   [ code ] problemas con tag [ / code ] (https://www.clubdelphi.com/foros/showthread.php?t=13577)

gatsu 24-08-2004 08:26:03

[ code ] problemas con tag [ / code ]
 
Bueno, tengo una duda de lo mas sencilla pero que no se solucionar.
Me gustaria saber cómo hacer para que a la hora de insertar en una base de datos, reemplazar los símbolos del formulario (textarea)
el
Código:

< por &lt; y > por &gt;
me explico?
es decir, que quiero poner bbcode en mi web y quiero que cuando la gente ponga [ code ] codigo [ / code ] , lo que haya entre los dos tags, se reemplace por su equivalente en html.

Espero haberme explicado.
Gracias de antemano.
Gatsu Studios

roman 24-08-2004 15:40:48

Lo que te conviene es usar expresiones regulares. En PHP hay varias funciones para ello, como preg_replace.

// Saludos

gatsu 25-08-2004 10:02:17

... vale, algun ejemplo de ello?

kayetano 25-08-2004 11:35:57

Hola

Copiado y pegado del manual de php.

string ereg_replace ( string pattern, string replacement, string string)

$string = "This is a test";
echo ereg_replace( " is", " was", $string );
echo ereg_replace( "( )is", "\\1was", $string );
echo ereg_replace( "(( )is)", "\\2was", $string );

gatsu 25-08-2004 11:52:46

vale, ya lo he cojido.
Muchas gracias cayetano :)
Ahora, la segunda parte de la duda ^^
digamos que esto seria para hacer el BBcode no?
Entonces, necesito un a cosa que empiece y otra que limite, eso se hace con
[ code] (aqui empezariamos a substituir) [ /code ] aqui acabamos.
Solamente quiero que el codifgo de ereg_replace( " is", " was", $string );
afecte a lo que hay entre [ code ] [ / code ]
Lo entendeis?
osea, que no afecte a todo.
espero haberme explicado :)
Atte: Gatsu Studios

kayetano 25-08-2004 13:51:09

hola

Me he perdido :)

Lo que tu quieres es convertir esto:

[CODE ]esto es un texto de ejemplo[/code]


por :

<code>esto es un texto de ejemplo</code>

lo que tienes que hacer es
Código PHP:

$str "[CODE ]esto es un texto de ejemplo[/code]";
$strCambio ereg_replace"[CODE ]"" <code>"$str );
$strCambio ereg_replace"[/code]"" </code>"$str ); 

por ejemplo.

Esto no te asegura que exista el tag de apertura y de cierre, simplemente te reemplaza uno por el otro.

gatsu 26-08-2004 06:47:05

No, no me has entendido,
Quiero que
[ code ] [ /code ]
se reemplace por el [ code ] del BBcode xD
no el tag < code >
Me entiendees?

kayetano 26-08-2004 07:33:07

Hola

Cita:

Empezado por gatsu
es decir, que quiero poner bbcode en mi web y quiero que cuando la gente ponga [ code ] codigo [ / code ] , lo que haya entre los dos tags, se reemplace por su equivalente en html.

Me había confundido esto de "equivalente en html".

Desconozco el equivalente en BBcode, pero dudo que sea mucho más complicado.

jachguate 26-08-2004 09:46:16

Cita:

Empezado por gatsu
lo que haya entre los dos tags, se reemplace por su equivalente en html.

...
Cita:

Empezado por gatsu
No, no me has entendido,
Quiero que
[ code ] [ /code ]
se reemplace por el [ code ] del BBcode xD
no el tag < code >

:confused:

O sea que no queres ni una cosa, ni la otra, sino totalmente lo contrario. :confused: ???

gatsu 26-08-2004 11:08:41

será posible...

a ver, yo no quiero que me haga etiqueta < code > que eso ya se hacerlo.
Quiero que cuando en mi sistema la gente ponga:
[ code ] < b > hola< /b > <br> simbolo & [ /code ]
en mi web salga
(una tabla y en el html que ponga:)
&lt;b&gt; hola&lt;/b&gt; &lt;br&gt; simbolo &amp;
(fin tabla)
entonces en el html pone eso y la impresion en pantalla se ve lo que ellos han puesto.
Aun no lo entendeis¿?
Será que me explico muy mal...
atte:Gatsu Studios

kayetano 26-08-2004 11:21:37

Hola

bueno, tate tranquilo :)

En primer lugar hacer algo asin:
Código PHP:

 $str "[CODE ]esto es un texto de ejemplo[/code]";
$strCambio ereg_replace"[CODE ]"" <table><tr><td>"$str );
$strCambio ereg_replace"[/code]"" </td></tr></table>"$str ); 

para cambiar caracteres a formato html puedes mirar la funcion
get_html_translation_table()

gatsu 26-08-2004 12:10:33

eeh
ese kayetano que me entiende xD
Asi me gusta,
Muchisimas gracias.
Atte:Gatsu Studios


La franja horaria es GMT +2. Ahora son las 17:51:34.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi