Foros del Web » Programando para Internet » PHP »

Problema al codificar a utf8

Estas en el tema de Problema al codificar a utf8 en el foro de PHP en Foros del Web. Estoy escribiendo un código que me lee un texto desde una página web y lo guarda en mi base de datos. La página html que ...
  #1 (permalink)  
Antiguo 24/07/2010, 17:13
 
Fecha de Ingreso: mayo-2003
Mensajes: 544
Antigüedad: 21 años, 5 meses
Puntos: 1
Problema al codificar a utf8

Estoy escribiendo un código que me lee un texto desde una página web y lo guarda en mi base de datos.

La página html que estoy leyendo es iso-8859-1 y tiene este texto por ejemplo:

sólo las delicadas pancartas que varios kilómetros antes de llegar aseguran que “Mejor Felipe”

Cuando lo imprimo en mi pagina php antes de guardarlo en la base de datos convierto el texto en utf8_decode() para que los acentos y los demas caracteres se vean bien, pero miren lo que imprime:

sólo las delicadas pancartas que varios kilómetros antes de llegar aseguran que ?Mejor Felipe?

En lugar de las comillas, aparecen signos de pregunta... Cómo puedo corregir este error?

PD: Mi página php no tiene definido ningun content-type
__________________
CSSBoulevar
Recursos para diseñadores y programadores webs
  #2 (permalink)  
Antiguo 24/07/2010, 21:08
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Problema al codificar a utf8

pues debes de establecer un content-type (recomiendo utf8), porque o si no el navegador usará el por defecto (tanto del navegador como si el servidor establece otro)

además de realizar las debidas trasformaciones de un charset a otro, al volcar texto html a la salida, debes de garantizar que el mismo no contenga aquellos caracteres que son especiales para el HTML, como (< y >) entre otros, para ello tienes la función htmlspecialchars que los convierte en la entidad html adecuada, en tu caso &quot;
  #3 (permalink)  
Antiguo 25/07/2010, 13:41
Avatar de bng5  
Fecha de Ingreso: junio-2009
Ubicación: 127.0.0.1
Mensajes: 269
Antigüedad: 15 años, 5 meses
Puntos: 24
Respuesta: Problema al codificar a utf8

El tema de los juegos de caracteres puede ser muy complejo, pero en este caso puede ser simplemente que estás usando la función opuesta.
Para convertir una cadena a UTF-8 deberías usar utf8_encode, no utf_decode.

Etiquetas: codificar, utf
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 04:15.