Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Problemas con UTF8 en campo de MySQL

Estas en el tema de Problemas con UTF8 en campo de MySQL en el foro de Mysql en Foros del Web. Hola, tengo una base de datos para guardar anuncios y tengo dos tablas: anuncio y provincias. En la tabla provincias para probar solo tengo dos ...
  #1 (permalink)  
Antiguo 15/04/2012, 05:57
 
Fecha de Ingreso: enero-2010
Mensajes: 17
Antigüedad: 14 años, 3 meses
Puntos: 0
Problemas con UTF8 en campo de MySQL

Hola, tengo una base de datos para guardar anuncios y tengo dos tablas: anuncio y provincias.

En la tabla provincias para probar solo tengo dos datos introducidos: A Coruña y Álava.
En anuncio, tengo los campos ID, titulo, cuerpo e ID_provincia.

Mi problema es el siguiente: Cuando meto este anuncio por ejemplo,
titulo-> Vendo Discografía.
Cuerpo-> Desde el año 1990 hasta año 2010.
Provincia-> A Coruña.

La provincia la hago mediante un campo option select.

Pues el caso es que a la hora de mostrarme el anuncio, la parte referente al anuncio la muestra correctamente pero las provincias que tienen caracteres especiales me las muestra con el rombo con ?. A la hora de elegir en el option select igual.

Tengo todos los campos con cotejamiento utf8_spanish_ci, tanto los de anuncio como provincia.

¿que soluciones hay?

Gracias.
  #2 (permalink)  
Antiguo 15/04/2012, 06:08
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: Problemas con UTF8 en campo de MySQL

si lo valores están si codificar en la base de datos tipo 'A coruña' una función en php que resuelve esto es :

Código PHP:
htmlentities($provincia); 
consultar manual

saludos
__________________
Tu álbum de cromos online!!
  #3 (permalink)  
Antiguo 15/04/2012, 06:18
 
Fecha de Ingreso: enero-2010
Mensajes: 17
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Problemas con UTF8 en campo de MySQL

Gracias, asi me funciona perfectamente. ¿Pero no habría una forma que no necesitara de funciones auxiliares? ya que en la BBDD en la tabala de provincias me salen todas con sus "ñ" y acentos correspondientes, pero al imprimirlas, no.
  #4 (permalink)  
Antiguo 15/04/2012, 09:11
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Problemas con UTF8 en campo de MySQL

Debes usar utf-8 como codificación de ficheros, base de datos, tablas, campos, formularios, etc...
Es decir, que si está todo en utf8, no necesitas funciones auxiliares.
  #5 (permalink)  
Antiguo 15/04/2012, 13:17
 
Fecha de Ingreso: enero-2010
Mensajes: 17
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Problemas con UTF8 en campo de MySQL

Llevo ya bastante rato probando de todo, y tengo todos los archivos guardados en UTF-8 sin BOM, todas las bases de datos y tablas en UTF8, los meta tambien.

Me he dado cuenta que si guardo en la base de datos cualquier caracter extraño desde el formulario de envio, luego al mostrar los elementos que hay lo saca correctamente. Pero eso no pasa con las provincias.



  #6 (permalink)  
Antiguo 15/04/2012, 13:23
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Problemas con UTF8 en campo de MySQL

Como guardaste las provincias? desde otro formulario o a la base de datos directamente?
  #7 (permalink)  
Antiguo 15/04/2012, 13:24
 
Fecha de Ingreso: enero-2010
Mensajes: 17
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Problemas con UTF8 en campo de MySQL

Ya lo he solucionado haciendo la siguiente sentencia de PHP despues de conectarme a la BBDD.
Es la primera vez que tengo que hacer esto, pero bueno, mientras funcione bien.

Código PHP:
Ver original
  1. mysql_query ("SET NAMES 'utf8'");

Gracias de todas formas por vuestra ayuda!!
  #8 (permalink)  
Antiguo 15/04/2012, 13:24
 
Fecha de Ingreso: enero-2010
Mensajes: 17
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Problemas con UTF8 en campo de MySQL

Cita:
Iniciado por DooBie Ver Mensaje
Como guardaste las provincias? desde otro formulario o a la base de datos directamente?
Las metí a mano, directamente desde el PHPmyAdmin
  #9 (permalink)  
Antiguo 15/04/2012, 13:40
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Problemas con UTF8 en campo de MySQL

Cita:
Iniciado por Karacol Ver Mensaje
Las metí a mano, directamente desde el PHPmyAdmin
Aunque lo hayas solucionado, te comento que ese es el "problema".
Si tienes tiempo y ganas, te haces un sencillo script, en el que guardes las provincias directamente desde php, no deberías de tener problemas.

Yo hace tiempo que no uso nada "especial" para el tema de los caracteres especiales, solamente, usar utf8 en todo :)

Etiquetas: select, tabla, utf-8, campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:25.