jump to navigation

Problemas de escapado de caracteres al guardar texto en PHP Lunes, 2 abril 2007

Posted by israelof in Implementación.
trackback

Uno de los problemas más comunes a la hora de guardar texto en un el fichero mediante PHP, aparece cuando, una vez guardado el texto, por arte de magia, en el contenido del fichero aparecen caracteres especiales escapados (por ejemplo \” cuando debería aparecer “).

Una de las cosas en que pensamos que podemos hacer mal, es que mandamos las cadenas por GET o POST sin codificar o mal codificadas mediante las funciones urlencode() o rawurlencode(). Pues por lo general, ese no es el problema.

El problema se encuentra en la directiva de PHP magic_quotes_gpc. Dicha directiva tiene un valor por defecto de on, por lo que de forma automática se llama a la función addslashes() en todos los datos que llegan a través de los métodos GET y POST y a través de las cookies.

La función get_magic_quotes_gpc() puede ser útil para comprobar el valor de esta directiva, de modo que si está activada, deberemos llamar a stripslashes() para desescapar el texto que se ha enviado al servidor y así poder guardarlo en el fichero correctamente.

Anuncios

Comentarios»

1. Vate - Jueves, 26 julio 2007

Master, lo unico q’ fato, es un ejemplo

2. Arm&cd - Martes, 10 junio 2008

si, falta un ejemplo, otra cosa, como se hace para guardar un dato que contenga el caracter especial & i griega??, por favor si alguien sabe.


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: