Foros del Web » Programando para Internet » PHP »

Me exporta los datos con caracteres raros

Estas en el tema de Me exporta los datos con caracteres raros en el foro de PHP en Foros del Web. Buenas a todos. Estoy haciendo un proyecto con PHP, Mysql, Apache y Phpmyadmin. Pues bien, el problema que estoy teniendo es que cuando exporto la ...
  #1 (permalink)  
Antiguo 26/11/2007, 09:50
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Me exporta los datos con caracteres raros

Buenas a todos. Estoy haciendo un proyecto con PHP, Mysql, Apache y Phpmyadmin. Pues bien, el problema que estoy teniendo es que cuando exporto la base de datos (con todos los datos introducidos) me los exporta mal, es decir, los acentos no me los reconoce y los pone como caracteres raros. De igual forma pasa por ejemplo con datos de las calles al poner por ejemplo piso 4ºA (ese º no lo toma bien).
Como puedo solucionar esto? Supongo que habrá alguna manera para que me lo tome tal cual yo lo escribo.

Muchas gracias.
  #2 (permalink)  
Antiguo 26/11/2007, 10:41
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
Re: Me exporta los datos con caracteres raros

Esto tendria que ver mas con Base de datos.. tienes que verificar que la codificación en tu base de datos destino sea "ISO-8859-1", para que no tengas problemas con este tipo de caracteres.

Saludillos.
  #3 (permalink)  
Antiguo 26/11/2007, 11:31
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 3 meses
Puntos: 13
Re: Me exporta los datos con caracteres raros

La codificación de la base de datos de destino tiene que ser la isma que la codificación de la base de datos de origen (ej: ambas UTF8, ambas ISO-8859-1, etc.).
__________________
El conocimiento es libre: Movimiento por la Devolución
  #4 (permalink)  
Antiguo 26/11/2007, 11:57
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Me exporta los datos con caracteres raros

Hola. He creado de nuevo desde 0 la base de datos y sus respectivas tablas. A todos les he puesto UTF8_SPANISH2_CI. He probado a extraer la base de datos con el phpmyadmin y al abrir el documento txt que me genera he comprobado que siguen saliendo los mismos caracteres. O sea que estoy igual que antes jeje.

Eso del ISO-8859-1 donde hay que ponerlo? en que sitio esta del phpmyadmin?

Gracias
  #5 (permalink)  
Antiguo 26/11/2007, 13:14
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Re: Me exporta los datos con caracteres raros

Con que abres el documento txt?

Ten en cuenta que tienes que abrirlo con algun editor que soporte el encoding UTF-8.

Saludos.
  #6 (permalink)  
Antiguo 26/11/2007, 14:02
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Re: Me exporta los datos con caracteres raros

Postea por favor un ejemplo de la salida donde aparezcan esos caracteres "raros" ....

Quizas puedas usar una funcion que brindo otro forero antes de escribir el TXT:

function crossUrlDecode($source) {
// arregla acentos!
$decodedStr = '';
$pos = 0;
$len = strlen($source);
while ($pos < $len) {
$charAt = substr ($source, $pos, 1);
if ($charAt == 'Ã') {
$char2 = substr($source, $pos, 2);
$decodedStr .= htmlentities(utf8_decode($char2),ENT_QUOTES,'ISO-8859-1');
$pos += 2;
}
elseif(ord($charAt) > 127) {
$decodedStr .= "&#".ord($charAt).";";
$pos++;
}
elseif($charAt == '%') {
$pos++;
$hex2 = substr($source, $pos, 2);
$dechex = chr(hexdec($hex2));
if($dechex == 'Ã') {
$pos += 2;
if(substr($source, $pos, 1) == '%') {
$pos++;
$char2a = chr(hexdec(substr($source, $pos, 2)));
$decodedStr .= htmlentities(utf8_decode($dechex . $char2a),ENT_QUOTES,'ISO-8859-1');
}
else {
$decodedStr .= htmlentities(utf8_decode($dechex));
}
}
else {
$decodedStr .= $dechex;
}
$pos += 2;
}
else {
$decodedStr .= $charAt;
$pos++;
}
}
return $decodedStr;
}
__________________
Salu2!
  #7 (permalink)  
Antiguo 27/11/2007, 02:49
 
Fecha de Ingreso: septiembre-2005
Mensajes: 379
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Me exporta los datos con caracteres raros

Os cuento. Los abro con el editor Bloc de notas o el Wordpad. Los caracteres raros que he visto hasta ahora son los sigiuentes (pongo la palabra correcta y luego como aparece):

Exportación --> Exportación
Jesús --> Jesús
Abarán --> Abarán
José --> José
Física --> FÃ*sica
Sánchez --> Sánchez

Muchas gracias.

POr cierto, ese codigo que me has puesto...no entiendo donde quieres que lo ponga. Si lo mas cómodo es dale a exportar la base de datos desde el phpyadmin.;)
  #8 (permalink)  
Antiguo 27/11/2007, 03:13
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años
Puntos: 292
Re: Me exporta los datos con caracteres raros

Pues.... conviertes los datos EN la base (le haces un UPDATE a todos los datos) y desde ahora en mas ... los grabas primero usando esa funcion y NUNCA MAS veras esos caracteres al imprimir.... solo por eso

Ademas no es TAN dificil hacerte tu propio programa de exportacion.......... y en él puedes usar esta funcion
__________________
Salu2!
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 13:36.