Ver Mensaje Individual
  #16 (permalink)  
Antiguo 01/05/2011, 18:33
angelfcm
(Desactivado)
 
Fecha de Ingreso: abril-2011
Mensajes: 153
Antigüedad: 13 años
Puntos: 236
Respuesta: problema con ñ...

A mi siempre me falla utilizando el utf8 como meta tag y header en php, siempre pongo el ISO-8859-1 y vualá los carácteres con acento o con símbolos especiales se muestran.

Mira si tu configuración es la predeterminada en php, observa el siguiente detalle.

Código PHP:
<?php
header
("Content-type:text/html;charset=utf-8"); // Si tú usas utf-8 en el header tendrás que codificar los carácteres
$nombre="¿Cuándo?, ¿Dónde?, ¿Quién?, Alberto Ñuñes";
echo 
utf8_encode($nombre); // $nombre es codificado y la salida es ¿Cuándo?, ¿Dónde?, ¿Quién?, Alberto Ñuñes
echo $nombre// La salida es �Cu�ndo?, �D�nde?, �Qui�n?, Alberto �u�es por que no fué codificado
?>
En cambio si tu usas ISO-8859-1 como a continuación.

Código PHP:
<?php
header
("Content-type:text/html;charset=ISO-8859-1"); // Aquí se usa el ISO-8859-1 lo cuál no es necesario codificar nada
$nombre="¿Cuándo?, ¿Dónde?, ¿Quién?, Alberto Ñuñes";
echo 
$nombre;  // La salida es ¿Cuándo?, ¿Dónde?, ¿Quién?, Alberto Ñuñes y nisiquiera se necesito codificar
?>
Solamente cuándo obtienes datos de otro lugar que no sea de tus documentos PHP con estandar ISO-8859-1 necesitas "decodificar" los datos con utf8_decode().

Código PHP:
<?php
header
("Content-type:text/html;charset=ISO-8859-1");
$nombre="¿Cuándo?, Â¿Dónde?, Â¿Quién?, Alberto Ã‘uñes"// Supuestamente es obtenido de MySql
echo utf8_decode($nombre);  // La salida es ¿Cuándo?, ¿Dónde?, ¿Quién?, Alberto Ñuñes usando utf8_decode()
?>

Última edición por angelfcm; 01/05/2011 a las 18:55