Mostrando entradas con la etiqueta problemas con acentos. Mostrar todas las entradas
Mostrando entradas con la etiqueta problemas con acentos. Mostrar todas las entradas

viernes, 20 de mayo de 2011

AJAX , problemas con acentos , htmlentities, utf8_encode,iso-8859-1,UTF-8

Hace unas programando una web se me presentó un problema , y es que haciendo llamadas AJAX a contenidos mediante JQuery , los caracteres con acentos, no se veían bien , estoy al tanto de que para visualizar estos caracteres en el documento HTML , hay que usar el estándar iso-8859-1:

<meta equiv="Content-Type" content="text/html; charset=iso-8859-1">


Pero el problema era solo cuando se hacían peticiones asincrónicas al servidor. Una solución puede ser enviar estos caracteres codificados, usando por ejemplo la función: htmlentities
htmlentities(“texto con acentos: áé”); // devuelve: texto con acentos: áé

Pero el problema radica en que al hacer una petición AJAX , los texto interpretados como si fueran en formato UTF-8, sin embargo lo que yo estaba enviando era texto en formato iso-8859-1, por lo tanto se produce un error , la solución más optima es usar la función : utf8_encode , que recibe como parámetro un texto en formato : iso-8859-1 y lo convierte en UTF-8.

La función contraria a utf8_encode, es utf8_decode
A mí me funcionó de maravillas.



Moises Soft (Desarrollo web en Cuba)