Foros del Web » Programando para Internet » PHP »

Cómo transformar carácteres especiales

Estas en el tema de Cómo transformar carácteres especiales en el foro de PHP en Foros del Web. Hola a todos! Tengo un problema que creía resuelto... En base de datos grabo un registro, por ejemplo: "texto<" Se graba correctamente. Pero después, al ...
  #1 (permalink)  
Antiguo 02/03/2011, 10:59
 
Fecha de Ingreso: febrero-2011
Mensajes: 156
Antigüedad: 13 años, 2 meses
Puntos: 4
Cómo transformar carácteres especiales

Hola a todos! Tengo un problema que creía resuelto... En base de datos grabo un registro, por ejemplo: "texto<"

Se graba correctamente. Pero después, al consultarlo, tengo problemas. Si hago un "echo", por pantalla sale: "texto". Pero si hago un ver código fuente, veo "texto<". Es decir, el carácter "<" lo detecta como un carácter especial y lo trata como un tag. Hago un "replace", pero nada. Es decir hago lo siguiente:

$v_titulo = $v_reg["titulo"];
$v_titulo = str_replace("\<","&lt;", $v_titulo);

echo $v_titulo;

Y por pantalla muestra "texto" y en código fuente: "texto<"

¿Cómo puedo conseguir el dato tal cual lo tenga grabado en base de datos, incluídos los carácteres especiales?

Muchas gracias!
  #2 (permalink)  
Antiguo 02/03/2011, 11:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Cómo transformar carácteres especiales

usa htmlspecialchars(), además el reemplazo que haces es inexacto... ya que no es necesario escapar el <
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 02/03/2011, 11:15
 
Fecha de Ingreso: febrero-2011
Mensajes: 156
Antigüedad: 13 años, 2 meses
Puntos: 4
Respuesta: Cómo transformar carácteres especiales

GENIAL!!! Es lo que dices, no había que escapar... Pero igualmente utilzaré htmlspecialchars() Muchas gracias!

Etiquetas: especiales, transformar
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 12:54.