Welcome to Pandora FMS Community › Forums › Community support › Problemas de acentos
-
Problemas de acentos
Posted by balanas on June 11, 2009 at 10:16Hola.
Hemos bajado la última versión a día de 11/06/09 y hemos observado que los acentos se introducen bien en la base de datos (UTF-8) pero se muestran erróneamente en la web (´). ¿se puede hacer algo para solucionarlo?
Gracias.
balanas replied 15 years, 8 months ago 4 Members · 7 Replies -
7 Replies
-
::
¿Puedes abrir un bug? http://sourceforge.net/tracker/?group_id=155200&atid=794852
Pincha el boton de “Add new” y rellena los datos que veas 🙂Muchas gracias!
-
-
-
::
Pues ocurre en todas las secciones en general. En cuanto hay una consulta a la base de datos, aparecen carácteres extraños tipo “?” o puede no aparecer si introducimos carácteres especiales directamente en la base de datos; o aparece &+acute ó &+tilde, si se introducen los carácteres desde la aplicación web.
En “detalle del agente” y en “detalle de alertas” no aparecen los carácteres o aparecen los “&+acute”. En “detalle de monitores” y “gestionar agentes” aparecen codificados con un “?” y “&+acute”
En “actualizar agente” en el título no aparece el carácter pero en la casilla de “nombre del agente” aparece el carácter “?”. -
::
He añadido: mysql_query (“SET NAMES ‘utf8′”); justo después de crear la conexión a la base de datos en el documento: config_process.php y ya se muestran los carácteres OK, pero cuando se introducen vía web lo hace con &+acute. ¿cómo se puede quitar esta conversión y que introduzca los datos directamente en UTF-8 a la base de datos? Gracias.
El archivo queda:
…..
//Non-persistent connection. If you want persistent conn change it to mysql_pconnect()
$config[‘dbconnection’] = mysql_connect ($config[“dbhost”], $config[“dbuser”], $config[“dbpass”]);
mysql_query (“SET NAMES ‘utf8′”);
if (! $config[‘dbconnection’]) {
….. -
-
::
Es la versión 3.0 pero ya está arreglado.
He modificado el fichero functions.php en su apartado de safe_input. He comentado toda la conversión html y le paso el valor directamente a la base de datos. Ha quedado como sigue:/*
if (version_compare (PHP_VERSION, ‘5.2.3’) === 1) {
if (! mb_check_encoding ($value, ‘UTF-8’))
$value = utf8_encode ($value);
return htmlentities ($value, ENT_QUOTES, “UTF-8”, false);} else {
$translation_table = get_html_translation_table (HTML_ENTITIES, ENT_QUOTES);
$translation_table[chr(38)] = ‘&’;
return preg_replace (“/&(?![A-Za-z]{0,4}w{2,3};|#[0-9]{2,3};)/”, “&”, strtr ($value, $translation_table));
}
*/
return $value;