Resolución de problemas de codificación de base de datos en cPanel

Guía para cambiar la codificación del sitio a través del archivo de configuración .htaccess.

Por defecto, la codificación MySQL global en los servidores de alojamiento compartido está configurada como «UTF-8» — esta es una característica del panel de control cPanel.

Para especificar la codificación de tu sitio y que se muestre correctamente en el navegador, ve a «Archivos → Administrador de archivos»

file

Accede a la carpeta «public_html».

file

Por defecto, el archivo «.htaccess» está oculto. Haz clic en el botón «Configuración» y marca la casilla «Mostrar archivos ocultos (dotfiles)».

file

A continuación, selecciona el archivo .htaccess y haz clic en «Editar».

file

En la ventana que aparecerá, haz clic en «Deshabilitar comprobación de codificación» y luego en «Edit».

file

Añade los siguientes valores al principio del archivo:

  • Para usar la codificación UTF-8:
AddDefaultCharset UTF-8 
  • Para usar la codificación Windows-1251:
AddDefaultCharset WINDOWS-1251 

file

A continuación, haz clic en «Guardar cambios».

Ahora ve a tu sitio y vacía la caché del navegador pulsando «Ctrl + F5» o «Ctrl + R». La codificación debería haber cambiado.


También conviene comprobar qué codificación se utiliza en tu base de datos. Para ello, entra en la herramienta de gestión de bases de datos «Bases de datos → phpMyAdmin»

file

Abre la base de datos deseada haciendo clic en su nombre en el panel izquierdo y ve a la sección «Operaciones».

En el campo «Cotejamiento», establece la misma codificación que se usa en el sitio.

file

Vacía la caché del navegador con «Ctrl + F5» o «Ctrl + R» y comprueba cómo se muestra el sitio.


También es necesario verificar la codificación al realizar consultas de datos en los scripts de tu sitio y especificar la codificación requerida para los datos. Ejemplo para UTF-8:

mysql_query ("set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
mysql_query ("SET NAMES utf8");

Ayuda

¿Tienes dudas o necesitas ayuda? Escríbenos a través del sistema de tickets — siempre estamos aquí para ayudarte!

¿Necesitas ayuda?Nuestros ingenieros te ayudarán gratuitamente con cualquier pregunta en minutosContáctanos