Tengo lo que creo que es una llamada de consulta normal en CakePHP: funciona para todos los resultados, pero cuando un campo tiene un carácter especial, el el campo volverá vacío. No se rompe, y todavía me da el resto de los campos, es solo un campo que está vacío.CakePHP - la consulta devuelve un campo vacío si tiene un carácter especial
Ejemplo:
$this->paginate = array(
'conditions' => array(
'Item.name != ' => '',
),
);
$data = $this->paginate('Item');
Esto devolverá todos los artículos en mi mesa (incluyendo la que pensé que tenía un campo de nombre vacío) - pero cuando intento hacer eco el nombre de la página, funciona para cada elemento, excepto el que tiene un carácter especial (é). Lo cambié a una "e" normal y se muestra bien.
¿Cómo puedo devolver resultados incluso si tienen un carácter especial en su nombre? ¡Gracias por adelantado!
¿Cuál es la codificación de la tabla? Además, ¿qué ocurre cuando ejecuta la consulta manualmente? ¿Aparece? Y compruebe si el campo está realmente poblado ejecutando 'var_dump()' en él – JohnP
@JohnP - No estoy seguro acerca de la codificación, pero cuando ejecuto la consulta manualmente (en el software o a través de php regular), aparece esta bien – Dave
@Dave deberás confirmar si Cake está realizando algún tipo de filtrado en los datos. Ejecute var_dump() o debug() y vea si los datos están realmente presentes en la matriz y simplemente no se muestran.También es posible que desee establecer la intercalación del DB en utf_8, así como el tipo de contenido en el HTML – JohnP