Solucionando acentos en resultados Ajax
Estas semanas ando solucionando multitud de problemas que se da en el desarrollo web de nueva generación, ya sabeis, Ajax, sistemas de templates, frameworks, etc… entre ellos, un problema que me ha dado quebraderos de cabeza es la codificación de un resultado devuelto con Ajax.
En PHP bastaría con poner en la página devuelta:
[code lang="php"]
< ?php
header('Content-Type: text/xml; charset=ISO-8859-1');
?>
[/code]
Si usamos Smarty, el cual es mi caso, se pondría en la platilla del resultado:
[code lang="php"]
{php}
header(’Content-Type: text/xml; charset=ISO-8859-1′);
{/php}
[/code]
Eso es todo, por ahora…
¿JavaScript no trabaja con UTF-8? ¿O el problema es la codificación en el transporte xml?
Creo que el problema está en el transporte. No sé decirte muy bien porqué ocurre, digamos que trabajo en medio de un pequeño caos; los datos que rescato son de un SQL Server que trabaja con una aplicación VB6, y yo sólo me encargo de mostrar esos datos en una web, ¿quién codifica mal? a saber, de todas formas si los resultados son mostrados en una web normal todo se vé bien, el único problema ocurre cuando va en un transporte Ajax, así que me decanto porqué el problema sea del transporte.
Yo tube el mismo problema con los acentos, aun trabajando con UTF-8. lo solucione del siguiente modo:
1){php}
header(”Content-Type: text/html charset=\”UTF-8\”");
{/php}
(observen que en vez de text/xml lo cambie por text/html
)
2) en la pagina que se muestran los dato fijense que este lo siguiente
Genial, era la solución al problema que tenía, muchas gracias!
Genial!!!
Llevaba días buscando esta solución. Bastó con poner:
en el archivo que genera los datos.
Mil gracias!!
con poner esta linea de php (no se publicó el código pq lo puse entre etiquetas php)
header(’Content-Type: text/xml; charset=ISO-8859-1′);
acá hay un articulo al respecto:
http://webelop.blogspot.com/2007/05/comunicacin-ajax-php-con-json.html
saludos
En el codigo PHP coloque el codigo:
header(’Content-Type: text/html; charset=UTF-8′);
Funciona para recibir la Ñ y acentos, pero me pasa que en consultas no me funciona (para buscar un dato con Ñ no me funciona, toca buscar la palabra con N)