Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/03/2015, 09:58
Avatar de Hyemin
Hyemin
 
Fecha de Ingreso: agosto-2014
Mensajes: 147
Antigüedad: 9 años, 8 meses
Puntos: 0
Problemas con tildes en MYSQL y PHP con el collation-utf8

Estoy haciendo una aplicacion que me muestra datos en un HTML, el codigo que escribo manualmente dentro de las etiquetas me sale correctamente con los acentos pero el que me traigo del MySQL sale con caracteres raros.

La base de datos la hice asi:
Cita:
create database blog character set utf8 collate utf8_spanish_ci;
Una tabla la creo asi:

Código SQL:
Ver original
  1. CREATE TABLE noticias (  
  2. id_noticias INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  3. titulo VARCHAR (150) charset utf8 COLLATE utf8_spanish_ci,
  4. detalles text charset utf8 COLLATE utf8_spanish_ci,
  5. html text charset utf8 COLLATE utf8_spanish_ci,
  6. fecha_cadena VARCHAR(100),
  7. fecha DATE,
  8. descarga VARCHAR (300) charset utf8 COLLATE utf8_spanish_ci,
  9. url VARCHAR (300) charset utf8 COLLATE utf8_spanish_ci,
  10. id_categoria INT
  11. );

Si voy a propiedades de la tabla y las columnas, todas me figuran como utf8_spanish_ci (uso MySQL workbench)

Escribo texto con tildes en los campos "detalles" por ejemplo y si ejecyto una consulta en el MySQL workbench sale bien con los tildes, es al pasarlos a PHP que no los trae.

Me conecto a la base usando:
Código PHP:
Ver original
  1. public static function con()
  2.            
  3.     {
  4.         $con = mysql_connect("localhost", "root", "");
  5.         mysql_query("SET NAMES 'utf-8'");
  6.         mysql_select_db("blog");
  7.         return $con;
  8.        
  9.     }


alguna idea?