Si has creado una aplicación web con Cakephp 2, los datos de la aplicación los recuperas de una base de datos a través de un “Controller” usando los distintos métodos “find” que proporciona Cakephp y te das cuenta de que no se recuperan ciertos registros, casualmente los que tienen tildes o caracteres raros, esta entrada en nuestro blog es para ti. Gracias a ella resolverás los problemas de codificación en CakePHP.
Sigue los siguientes pasos:
1.- Asegúrate de que la primera línea de tu fichero “layout.ctp” es:
PHP |copy code |?
1 <?
2 php header('Content-type: text/html; charset=UTF-8');3 ?>
2.- Introduce la siguiente línea dentro de la etiqueta HEAD:
PHP |copy code |?
1 <?php echo $html->charset('utf-8'); ?>
3.- Asegúrate de que el encoding de tu base de datos es utf8_general_ci. Para verlo entra a través de la herramienta phpMyAdmin a la configuración general de tu base de datos.
4.- Establece la codificación de caracteres para todas las tablas de la base de datos a utf8_general_ci. Para ello, selecciona la tabla a modificar y cambia el encoding en la pestaña “Operaciones“.
5.- Asegúrate de que has establecido el encoding en el fichero de configuración de base de datos de cakephp, ubicado en la siguiente ruta /cake/app/Config/database.php:
PHP |copy code |?
01 02 var $default = array(03 'driver' => 'mysql',04 'persistent' => false,05 'host' => 'localhost',06 'login' => 'username',07 'password' => 'password',08 'database' => 'dbname',09 'prefix' => '',10 'encoding' => 'utf8'11 );
Siendo estos pasos deberías solucionar los problemas de codifiación de caracteres en tu sitio web desarrollado con CakePHP.
Si tienes algún problema o alguna consulta utliza los comentarios para hacernoslos llegar.
Deja tu comentario