Codificación de caracteres sin problemas en PHP/MySQL

27. abril 2017 html, PHP, Web 1

Cuando empiezas a desarrollar aplicaciones web con PHP y MySQL seguro que te toparás con los acentos y otros caracteres propio de nuestro idioma como las ñ y ç. Si hacemos las cosa de manera correcta esto puede ser un problema ya que es muy posible que estos caracteres no se muestren correctamente.

En esta entrada quiero proponer los pasos para que esto no suceda…

Trabajar correctamente con codificación de caracteres en castellano

Para que nuestro proyecto web haga inserciones y consultas desde php a una bbdd de texto que contenga caracteres del castellano como ñ o acentos deberemos seguir los siguientes pasos:

1. Primeramente hay que establecer la bbdd a utf8mb4_spanish_ci cuando la creéis. Para comprobar que se ha hecho tanto para la bbdd como para las tablas como para los campos y además comprobar la configuración del cotejamiento del servidor:

BBDD (Se muestra en la información que aparece al seleccionar la bbdd en phpmyadmin)

utf8_1

TABLA (Seleccionar la tabla y luego ir a la pestaña operaciones)utf8_2

CAMPOS (Seleccionar la tabla e ir a la pestaña estructura)

utf8_3

COTEJAMIENTO DE LA CONEXIÓN AL SERVIDOR(Ir al inicio de phpmyadmin, click en el icono de la casa)

utf8_4

2. Establecer la codificación en HTML:

3. Establecer la codificación en PHP (en los archivos que vayan a mostrar resultados con estos caracteres , lo ponemos al inicio del archivo):

4. Establecer como se va a comunicar PHP con MySQL. Teniendo una conexión ya configurada podríamos hacerlo comprobando su resultado:

Y listo, si añadís el charset a todos vuestros html y el header a cada php que lo necesite no deberíais tener ningún problema, suerte ?.


1 thought on “Codificación de caracteres sin problemas en PHP/MySQL”

  • 1
    Linix on 3 mayo, 2017 Responder

    De lectura indispensable si quieres ahorrarte unos cuantos quebraderos de cabeza cuando empiezas a desarrollar (o cuando ya no te acuerdas..).
    Gracias por el aporte.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *