Ver Mensaje Individual
  #10 (permalink)  
Antiguo 28/03/2013, 10:37
Avatar de dontexplain
dontexplain
 
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 11 años, 10 meses
Puntos: 127
Respuesta: Tildes con ajax

Cita:
Iniciado por joselegolas Ver Mensaje
He conseguido dar con la solución, en el script he puesto la siguiente línea de código:
Código PHP:
Ver original
  1. header("Content-Type: text/html; charset=iso-8859-1");
y eso que ya tenía en las etiquetas head de todos los php la instrucción:
Código PHP:
Ver original
  1. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
No entiendo cual es la diferencia, si me la explicas dormiré mejor, llevaba dos días con la duda y no lo conseguía, gracias dontexplain.


La diferencia es la siguiente. Una respuesta HTTP se compone de dos partes, una cabecera y un cuerpo. En la cabecera van los headers que especifican cuestiones acerca de la respuesta y en el body el contenido.

header("cabecera:valor") añade un header real en la cabecera de la respuesta.

<meta http equiv> está en el cuerpo de la respuesta, después de las cabeceras, por lo tanto, no es una cabecera.

La prioridad es siempre headers -> meta. Por lo que siempre prevalecerá lo que haya en headers.

Probablemente el servidor haya estado mandando un header predefinido con una codificación distinta a la que tú indicaste en meta.

Un saludo.
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor