0

Dispongo de un fichero .sql para ser cargado en phpmyadmin mediante la opción de importar .sql. introducir la descripción de la imagen aquí

En la opción "Conjunto de caracteres del archivo:" he elegido tanto "utf-8" como "iso-8859-1".

Al inspeccionar los elementos de la base de datos en las tablas, me encuentro con que sí acepta las "ñ".

introducir la descripción de la imagen aquí

Lo que ocurre es que al ejecutar una consulta en php me muestra la "?" en lugar de la "ñ", he añadido la opción siguiente pero no funciona: header("Content-Type: text/html;charset=utf-8"); introducir la descripción de la imagen aquí

sstan
  • 16,591
  • 2
  • 21
  • 45
omaza1990
  • 2,722
  • 32
  • 82
  • 143
  • 6
    Posible duplicado de [¿Por que el Carácter inspector (�) aparece en algunos datos obtenidos de la Base de Datos?](https://es.stackoverflow.com/questions/59489/por-que-el-car%c3%a1cter-inspector-aparece-en-algunos-datos-obtenidos-de-la-base). Esta pregunta se ha planteado de diversas maneras aquí. La codificación hay que revisarla en diferentes niveles. En tu caso casi seguro que el problema se encuentra en el **nivel 3**. – A. Cedano Nov 24 '17 at 10:46
  • También puedes jugar con el encoding con que se sirve la página. A lo mejor PHP la recibe bien y tu webserver la despliega mal? – ffflabs Nov 24 '17 at 11:04
  • En mi editor Notepad++ tengo la codificación UTF-8 asignada, no sé dónde tengo la errata. – omaza1990 Nov 24 '17 at 11:07
  • Puedes utilizar `utf8_encode(nombre)` o `uft8_decode(nombre)` a la hora de mostrar tus datos desde el PHP. – Francisco Romero Nov 24 '17 at 12:08
  • 1
    El problema es que al crear la conexión a la base de datos desde PHP no estás estableciendo la codificación , ahí debes establecer UTF-8. **Nivel 3** de la pregunta enlazada más arriba. No implementes soluciones a medio camino, perderás en rendimiento. Y verifica que tienes UTF-8 en todos los niveles de tus datos. – A. Cedano Nov 24 '17 at 12:45
  • @Francisco Romero utilizar `utf8_encode` y `uft8_decode` para esto es un parche. No debería de utilizarse en este contexto. Justo como comenta A. Cedano la solución pasa que l codificación sea la adecuada en todos los niveles e intercambio de datos. – Xerif Nov 24 '17 at 12:50
  • @omaza1990 ¿Cúal es la codificación establecida en tu base de datos y en la conexión a la misma? Asegúrate de usar el meta de html para indicar también la codificación `` y que el navegado lo intérprete como tal. – Xerif Nov 24 '17 at 12:54
  • Mi problema está en el -Nivel 4- (anteriores niveles probados, sin cambios) debido a que en los datos de las tablas en localhost/phpmyadmin de mi base de datos, salen los datos con "ñ" y "´" en un formato incorrecto. – omaza1990 Nov 29 '17 at 10:27

0 Answers0