Foros del Web » Programando para Internet » PHP »

php, mysql y utf-8 - Fastidiado con las tildes...

Estas en el tema de php, mysql y utf-8 - Fastidiado con las tildes... en el foro de PHP en Foros del Web. Hola, el tema que me traigo entre mano es con una web que intento implementar que desde el panel de admin, inserto contenido que luego ...
  #1 (permalink)  
Antiguo 19/08/2008, 12:24
 
Fecha de Ingreso: abril-2005
Mensajes: 196
Antigüedad: 19 años
Puntos: 2
php, mysql y utf-8 - Fastidiado con las tildes...

Hola, el tema que me traigo entre mano es con una web que intento implementar que desde el panel de admin, inserto contenido que luego ven los usuarios. Ese contenido se guarda en una bbdd mysql.

El tema es que la web la estaba haciendo con codificación utf-8 y así poder poner á en vez de a&quote. Y todo perfecto...

Hasta que me he puesto a meter contenido a la base de datos que escribo á y me sale el rombo con el interrogante �

Luego cuando accedo por phpmyadmin, veo que está bien escrito, es solo en la web donde no se muestra bien...

Darme alguna solución por favor!!
Mil gracias!!
__________________

Directorio Web --> Posicionamiento SEO en Imágenes
Proxy Anonimo --> Oculta tus datos al navegar
  #2 (permalink)  
Antiguo 19/08/2008, 12:30
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Respuesta: php, mysql y utf-8 - Fastidiado con las tildes...

1.- en el html defini codificacion utf8
2.- en los formularios tambien
3.- setea la conexion a la bbdd con utf8 (set_charset creo q era o sino por sql)

si en phpmyadmin se ven mal no quiere decir q esten mal la codificaion puede ser por la codifiacion de las pagnas del phpmyadmin

tambien podes utilizar utf8_encode() y utf8_decode() de php
saludos
__________________
Degiovanni Emilio
developtus.com
  #3 (permalink)  
Antiguo 19/08/2008, 12:32
 
Fecha de Ingreso: agosto-2008
Mensajes: 4
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: php, mysql y utf-8 - Fastidiado con las tildes...

Tienes que asegurarte de que las cabeceras html tengan el charset correcto

Código:
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
También tienes que asegurarte de que todos los ficheros estén creados con la codificación UTF-8, a mi me pasó y el problema estaba en que los ficheros estaban creados con una codificación Western no se qué, los cambié y voila!
  #4 (permalink)  
Antiguo 19/08/2008, 12:43
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Respuesta: php, mysql y utf-8 - Fastidiado con las tildes...

exacto como bien dice kuve los archivos tambien tienen que ser guardados en utf8
__________________
Degiovanni Emilio
developtus.com
  #5 (permalink)  
Antiguo 19/08/2008, 12:49
Avatar de ..::MaRcOs::..  
Fecha de Ingreso: diciembre-2006
Mensajes: 328
Antigüedad: 17 años, 4 meses
Puntos: 3
Respuesta: php, mysql y utf-8 - Fastidiado con las tildes...

pues la verda no se pero el q coloca kuve nunca me ha servido
el q si me funciona perfecto es

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
  #6 (permalink)  
Antiguo 19/08/2008, 12:53
 
Fecha de Ingreso: abril-2005
Mensajes: 196
Antigüedad: 19 años
Puntos: 2
Respuesta: php, mysql y utf-8 - Fastidiado con las tildes...

Si, los archivos ya están en utf-8...

Para lo de setear en utf-8 como sería??
Este es mi código de conexión a la bbdd

Cita:
function Conectarse()
{
if (!($db=mysql_connect("localhost","user","contraseñ a")))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db("nombre",$db))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $db;
}

$db=Conectarse();
__________________

Directorio Web --> Posicionamiento SEO en Imágenes
Proxy Anonimo --> Oculta tus datos al navegar
  #7 (permalink)  
Antiguo 19/08/2008, 12:55
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Respuesta: php, mysql y utf-8 - Fastidiado con las tildes...

si estas en php5.2.3 o superior

mysql_set_charset

(PHP 5 >= 5.2.3)
mysql_set_charset — Sets the client character set

Descripción

bool mysql_set_charset ( string $charset [, resource $link_identifier ] )
Sets the default character set for the current connection.

Lista de parámetros


charset A valid character set name.
link_identifier The MySQL connection. If the link identifier is not specified, the last link opened by mysql_connect() is assumed. If no such link is found, it will try to create one as if mysql_connect() was called with no arguments. If by chance no connection is found or established, an E_WARNING level error is generated.

Valores retornados

Devuelve TRUE si todo se llevó a cabo correctamente, FALSE en caso de fallo.

Notes
Note: This function requires MySQL 5.0.7 or later.

Ver también


__________________
Degiovanni Emilio
developtus.com
  #8 (permalink)  
Antiguo 19/08/2008, 12:58
 
Fecha de Ingreso: abril-2005
Mensajes: 196
Antigüedad: 19 años
Puntos: 2
Respuesta: php, mysql y utf-8 - Fastidiado con las tildes...

Lo que no se es donde tengo que meter el set_charset

Y por cierto, muchas gracias por la ayuda!!
__________________

Directorio Web --> Posicionamiento SEO en Imágenes
Proxy Anonimo --> Oculta tus datos al navegar
  #9 (permalink)  
Antiguo 19/08/2008, 15:14
 
Fecha de Ingreso: abril-2005
Mensajes: 196
Antigüedad: 19 años
Puntos: 2
Respuesta: php, mysql y utf-8 - Fastidiado con las tildes...

eeoo, no se donde ponerlo!!
Es en mi código de conexión a la BBDD??
Cita:
function Conectarse()
{
if (!($db=mysql_connect("localhost","user","contraseñ a")))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db("nombre",$db))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $db;
}

$db=Conectarse();
__________________

Directorio Web --> Posicionamiento SEO en Imágenes
Proxy Anonimo --> Oculta tus datos al navegar
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 00:56.