Foros del Web » Programando para Internet » PHP »

Problemas con tildes en MYSQL y PHP con el collation-utf8

Estas en el tema de Problemas con tildes en MYSQL y PHP con el collation-utf8 en el foro de PHP en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 17/03/2015, 09:58
Avatar de 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?
  #2 (permalink)  
Antiguo 17/03/2015, 10:55
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Problemas con tildes en MYSQL y PHP con el collation-utf8

A leer campeón: http://www.phptherightway.com/#php_and_utf8
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 17/03/2015, 11:31
Avatar de Hyemin  
Fecha de Ingreso: agosto-2014
Mensajes: 147
Antigüedad: 9 años, 8 meses
Puntos: 0
Respuesta: Problemas con tildes en MYSQL y PHP con el collation-utf8

Gracias por tu respuesta;

Probé cambiar a utf8mb4 en MySQL y agregar las lineas que me indican en el index.php (que es quien muestra los datos formateados en la pantala)

Código PHP:
Ver original
  1. // Tell PHP that we're using UTF-8 strings until the end of the script
  2.  
  3. // Tell PHP that we'll be outputting UTF-8 to the browser
  4. mb_http_output('UTF-8');

Por ahora sigue mostrando de manera incorrecta los acentos que traigo de la base de datos

Los datos que ingreso no lo hago por PHP, los ingreso directamente desde MySQL workbench

Alguna idea de que estoy haciendo mal?

Etiquetas: fecha, html, mysql, select, tabla, tildes
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 20:39.