Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

problema con ñ y tildes al generar un archivo de mysql a excel

Estas en el tema de problema con ñ y tildes al generar un archivo de mysql a excel en el foro de Mysql en Foros del Web. En la aplicacion que tengo, poseo un problema al generar un archivo xls ya que las ñ y tildes me salen unas letras raras digamos ...
  #1 (permalink)  
Antiguo 08/02/2010, 11:23
 
Fecha de Ingreso: enero-2010
Mensajes: 302
Antigüedad: 14 años, 2 meses
Puntos: 3
Exclamación problema con ñ y tildes al generar un archivo de mysql a excel

En la aplicacion que tengo, poseo un problema al generar un archivo xls ya que las ñ y tildes me salen unas letras raras digamos q las ñ me salen AnfI o algo y las tildes lo mismo, no utilizo programas raros que e visto por internet sino un codigo que se ejecuta y me crea el xls, el problema es saber como configurar para que me salgan las ñ y las tildes, me acuerdo que al generar un pdf se colocaba utf 8 decode () algo asi pero no me sirve esa opcion en el xls, les agradezco la ayuda gracias si algo

este es el codigo lo coloco porque no utilizo algun programa de los que e visto por internet

Código PHP:
<?php
header
('Content-type: application/vnd.ms-excel');
header("Content-Disposition: attachment; filename=archivo.xls");
header("Pragma: no-cache");
header("Expires: 0");
include 
"../../Connections/Activos3.php";
$query "SELECT * FROM activo ORDER BY serialemp";
$result mysql_query($query) or die(mysql_error());
$row mysql_fetch_array($result);
$query2 "SELECT SUM(precio) AS total FROM activo";
$result2 mysql_query($query2) or die(mysql_error());
$valores mysql_fetch_array($result2);
echo 
"<table border=1>\n";
echo 
"<tr>\n";
echo 
"<th>CODIGO</th>\n";
echo 
"<th>SERIAL</th>\n";
echo 
"<th>DESCRIPCIÓN</th>\n";
echo 
"<th>PROVEEDOR</th>\n";
echo 
"<th>UBICACIÓN</th>\n";
echo 
"<th>AREA</th>\n";
echo 
"<th>CANTIDAD</th>\n";
echo 
"<th>PRECIO</th>\n";
echo 
"<th>ESTADO</th>\n";
echo 
"<th>CI DEL RESPONSABLE</th>\n";
echo 
"<th>NOMBRE DEL RESPONSABLE</th>\n";
echo 
"<th>CI DEL USUARIO</th>\n";
echo 
"<th>NOMBRE DEL USUARIO</th>\n";
echo 
"<th>FECHA ADQUISICIÓN</th>\n";
echo 
"<th>FECHA VENCIMIENTO GARANTIA</th>\n";
echo 
"<th>COMENTARIO(S)</th>\n";
echo 
"<th>VALOR TOTAL</th>\n";
echo 
"</tr>\n";
$i 0;
do {
echo 
"<tr align=>\n";
echo 
"<td><div align=\"left\">".$row['serialemp']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['serial']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['descripcion']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['proveedor']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['ubicacion']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['area']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['cantidad']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['precio']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['estado']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['ci_responsable']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['nombre_responsable']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['ci_usuario']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['nombre_usuario']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['fecha_adq']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['fecha_gar']."</div></td>\n";
echo 
"<td><div align=\"left\">".$row['comentario']."</div></td>\n";
$i=$i+1;
} while (
$row mysql_fetch_assoc($result)); 
echo 
"<td><div align=\"left\">".$valores["total"]."</div></td>\n";
echo 
"</tr>\n";
echo 
"</table>\n";
mysql_free_result($result);
mysql_free_result($result2);
?>
Los campos que mas contienen ñ y tildes descripcion y comentario pero de todas formas uno no esta excento de que en los campos de nombre de responsable o usuario no las ayas y esos campos son los que me salen las ñ y tildes con unas letras todas raras les agradezco la ayuda
  #2 (permalink)  
Antiguo 08/02/2010, 11:30
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: problema con ñ y tildes al generar un archivo de mysql a excel

Primero, este foro solo se permite todo lo que sea MySQL solamente. Segundo, ¿estás seguro que en la base de datos tienes guardados los caracteres como deben ser? Si los caracteres están correctos en la base de datos, entonces ¿cuál es el charset que tienes declarado en la base de datos? para ver si necesitas hacer algún cambio en el archivo de PHP o escribir algún código extra.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 08/02/2010, 12:48
 
Fecha de Ingreso: enero-2010
Mensajes: 302
Antigüedad: 14 años, 2 meses
Puntos: 3
Respuesta: problema con ñ y tildes al generar un archivo de mysql a excel

si los datos estan guardados correctamente y estan en latin1_spanish si mal no me acuerdo el caso es que cuando guardo las ñ y tildes desde la aplicacion las guarda bien he guardado los caracteres de esta forma ´ ` osea con esas tildes y Ñ ñ y me los guarda perfectamente el problema esta cuando voy a exportar los datos a un archivo de excel que me convierte esos mismos caracteres en letras extrañas como este ejemplo A#fi2 por asi decirlo, y si aca no es el sitio adecuado para publicar este error me podrian decir donde lo hago gracias
  #4 (permalink)  
Antiguo 26/03/2010, 12:40
 
Fecha de Ingreso: enero-2010
Mensajes: 302
Antigüedad: 14 años, 2 meses
Puntos: 3
Respuesta: problema con ñ y tildes al generar un archivo de mysql a excel

he tratado de varias formas para q no me salgan letras raras en excel pero aun salen y estas en la base de datos estan bien se ven las letras bien, me refiero a Tildes, y Ñ ñ pero en excel salen son cosas raras como #$% o algo parecido, no saben que pueda ser ?

Etiquetas: excel, 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 23:32.