Foros del Web » Programando para Internet » PHP »

Problema con Archivos Excel de origen MySql

Estas en el tema de Problema con Archivos Excel de origen MySql en el foro de PHP en Foros del Web. Saludos Amigos, revisando en el foro me encontré con el siguiente buen código para generar un documento XLS o Excel a partir de una consulta ...
  #1 (permalink)  
Antiguo 15/04/2009, 06:21
 
Fecha de Ingreso: febrero-2009
Mensajes: 56
Antigüedad: 15 años, 9 meses
Puntos: 3
Problema con Archivos Excel de origen MySql

Saludos Amigos, revisando en el foro me encontré con el siguiente buen código para generar un documento XLS o Excel a partir de una consulta a una base de datos:

Código HTML:
<?php
header("Content-Type: application/vnd.ms-excel");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("content-disposition: attachment;filename=Reportes al ".date("d-m-y").".xls");
?>
<HTML LANG="es">
<title>Bases de Datos.</title>
</head>
<body>
<?php
$NombreBD = "AQUI VA EL NOMBRE DE TU BASE DE DATOS";
$Servidor = "AQUI VA EL NOMBRE DE TU SERVIDOR EN EL MAYOR DE LOS CASOS LOCALHOST";
$Usuario  = "AQUI VA TU NOMBRE DE USUARIO DE LA BASE DE DATOS EN EL MAYOR DE LOS CASOS ROOT";
$Password = "PASSWORD DE TU BASE DE DATOS SI NO TIENE PASS DEJAR EN BLANCO";

$IdConexion = mysql_connect($Servidor, $Usuario, $Password);
mysql_select_db($NombreBD, $IdConexion);

$sql = "COLOCA AQUI TU CONSULTA SQL A LA BD";
$result=mysql_query($sql,$IdConexion);
?>
<TABLE BORDER=1 align="center" CELLPADDING=1 CELLSPACING=1>
<TR>
<TD  bgcolor="#000000"><span style="color:#FFFFFF; font-weight:bold;">&nbsp;CELDA1</span></TD> 
<TD  bgcolor="#000000"><span style="color:#FFFFFF; font-weight:bold;">&nbsp;CELDA2&nbsp;</span></TD>
<TD  bgcolor="#000000"><span style="color:#FFFFFF; font-weight:bold;">&nbsp;CELDA3&nbsp;</span></TD>
<TD  bgcolor="#000000"><span style="color:#FFFFFF; font-weight:bold;">&nbsp;CELDA4&nbsp;</span></TD>
</TR>
<?php
while($row = mysql_fetch_array($result)) {
echo"<tr>";
echo"<td>".$row["campo a mostrar de tu base de datos"]. "</td>";
echo"<td>".$row["campo a mostrar de tu base de datos"]. "</td>";
echo"<td>".$row["campo a mostrar de tu base de datos"]. "</td>";
echo"<td>".$row["campo a mostrar de tu base de datos"]. "</td>";
echo "</tr>";
}
mysql_free_result($result);
mysql_close($IdConexion);  //Cierras la Conexión
?>
</table>
</body>
</html> 
Ahora, la cuestión es que funciona perfectamente, pero el documento que origina no se ve con las líneas típicas que tienes las celdas de excel, el documento se baja con un completo fondo blanco. Colocarle bordes a los resultados es facil con CSS, pero que el documento de fondo tenga tooooodas sus líneas típicas.... ¿Cómo se hace?

Gracias !!!
  #2 (permalink)  
Antiguo 15/04/2009, 08:16
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Problema con Archivos Excel de origen MySql

El problema es que ese código lo que hace es exportar una tabla HTML, Excel lo lee como un documento HTML y por eso no le pone las lineas, ya que esta importandolo como HTML.

Para lo que deseas debes usar un export a Excel como Excel_Writer de PEAR.

Saludos.
  #3 (permalink)  
Antiguo 15/04/2009, 09:37
 
Fecha de Ingreso: febrero-2009
Mensajes: 56
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema con Archivos Excel de origen MySql

Gracias !!
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 14:09.