ajax e ISO-8859-1
01-Jan-08
Todos hemos pasado por esto. Te montas tu objeto ajax y pasas la petición al fichero php. En firefox obtienes una salida en cuanto a los caracteres con acentos y en IE otra, por no hablar sobre distintos sistemas operativos. Obviamente ya sabes que tiene que ver con el charset pero ¿dónde te has dejado la anotación sobre como resolviste el problema la última vez?
Bueno en el javascript usado para enviar request de ajax necesitas hacer esto justo antes de mandar el request:
s_valor_enviado = encodeURIComponent(s_valor_enviado);
en el archivo php al que haces el request necesitas poner antes de hacer ninguna salida:
header(’Content-Type: text/html; charset=utf-8′);
los datos que recuperas en la entrada de datos del php
$s_valor_recibido = utf8_decode($s_valor_recibido);
y en la salida que devolveras al request de ajax:
$s_valor_respuesta = utf8_encode($s_valor_respuesta);
