Estoy trabajando en un sitio web que usa/almacena caracteres acentuados en la base de datos. Tengo el conjunto de plantilla de página para que el config.php variable de conjunto de caracteres coincide con la configuración, por ejemplo:CodeIgniter config charset y soporte UTF-8
<meta charset="<?php echo $this->config->item('charset');?>">
El problema que estoy teniendo es que cuando se pone a $config['charset']
UTF-8, la forma la validación falla y es como si no se hubieran enviado caracteres si se hubiera incluido un carácter acentuado. Entonces, por ejemplo, un campo requerido se recuperará si se incluye á en cualquier parte de la cadena. La cadena menos el á funciona bien.
he logrado conseguir este trabajo cambiando el $config['charset']
a ISO-8859-1 y la conversión de texto a UTF-8 antes de insertar/después de recuperar de la base de datos con php de utf8_encode()
y utf8_decode()
. ¿Es esta la mejor manera o me falta algo necesario para obtener UTF-8, con caracteres acentuados, trabajando en CodeIgniter?
Cualquier consejo apreciado.
Asegúrese de configurar en todas partes UTF-8. Es difícil decir qué va mal, pero probablemente en algún momento tengas un conjunto de caracteres diferente. Debe leer: http://www.joelonsoftware.com/articles/Unicode.html. – Styxxy