Foros del Web » Programando para Internet » PHP »

Una Query a Excel

Estas en el tema de Una Query a Excel en el foro de PHP en Foros del Web. Hola: Necesito enviar el resultado de una consulta SQL a un archivo Excel. Estube viendo las FAQ's pero no me sirvio mucho el ejemplo que ...
  #1 (permalink)  
Antiguo 13/05/2004, 14:00
 
Fecha de Ingreso: julio-2002
Ubicación: Rancagua - Chile
Mensajes: 494
Antigüedad: 21 años, 9 meses
Puntos: 0
Una Query a Excel

Hola:
Necesito enviar el resultado de una consulta SQL a un archivo Excel.
Estube viendo las FAQ's pero no me sirvio mucho el ejemplo que hay.
Espero que alguien me ayude.
Gracias.

Salu2 !!!
__________________
AK.T.I.V.E.tm Live, Never DIE
  #2 (permalink)  
Antiguo 13/05/2004, 21:38
Avatar de sism82  
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 20 años, 5 meses
Puntos: 1
si te refieres a generar un reporte que pueda ser exportado a excel. Actualmente excel permite enviarle html, digamos una tabla html donde se contengan los resultados y la desplegara. Por ejemplo:

<?php
$sqlEmpleados = "SELECT * FROM empleados";
$rssEmpleados = mysql_query($sqlEmpleados,$con);
ob_start();
?>
<table>
<tr>
<td>Nombre del Empleado</td>
<td>Tel&eacute;fono</td>
</tr>
<?php
while($empleado = mysql_fetch_object($rssEmpleados))
{
?>
<tr>
<td><?php echo $empleado->nombre; ?></td>
<td><?php echo $empleado->telefono; ?></td>
</tr>
<?php
}//fin while
?>
</table>
<?php
$excelFileName = "reporte_empleados.xls";
$excelFile = fopen($excelFileName,"w");
$htmlTabla = ob_get_contents();
fwrite($excelFile,$htmlTabla);
?>
<a href="<?php echo $excelFileName; ?>" target="_blank">Reporte en Excel</a>

guardar el contenido html pertintente en el búffer con ob_start() es una opción, la otra es ir separando cada celda de tabla con una tabulación y de igual forma excel lo lee.

Saludos
  #3 (permalink)  
Antiguo 14/05/2004, 06:57
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
La base sería lo que comentan en las FAQ's .. Exel tiene la virtud de reconocer como "fila" "columna" una estructura HTML de tabla común .. (incluso parece que reconoce el formato también si se aplica tipografía y colores?).

El destino que le des .. depende de lo que comenta sism82, puedes generar el archivo directamente .. o incluso ofrecerlo a descargar si usas las cabeceras HTTP adecuadas o entregarlo directamente al navegador para que lo interprete Exel ahí mismo.

Otras técnicas sería ... usando "COM" (requiere de que PHP corra bajo Windows y que el servidor tenga instalado el Exel en el) ..con esas técnicas tienes más control para generar el .xls y definir más propiedades del archivo en sí.

Tienes algunas classes (objetos) que te podrán ayudar (usando ambas técnicas) en:

http://www.phpclasses.org/search.htm...ls&go_search=1

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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:10.