Mayo 20, 2007
Exportar datos de Php a Excel
Con frecuencia nos gustaría que los datos que estamos visualizando de un lista de resultados de la web, en php para ser exactos, nos gustaría importarlos, a Excel por ejemplo.
Suena facil darle un copy&paste, pero luego se vuelve mas complejo de lo que pensamos. Veamos cómo podemos lograrlo con algunas líneas de código antes de nuestra página de resultados.
Agregamos al inicio de nuestro página en cuestión, con sus respectivos tags de php las siguiente líneas:
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=nombredelarchivoagenerar.xls");
Y listo, al momento de visualizar la página nos pedirá abrirla o guardarla en excel, y en cuestión de segundos importamos datos desde php a excel sin dolor. Ya en Excel podremos darle el formato que deseemos antes de imprimirla, enviarla por correo, etc.
Espero esta función le sea de utilidad como lo ha sido en mi caso. Gracias a Andrés Canyon, Webmaster de tecnorama por este excelente aporte.
Saludos.
Valora esta entrada:


(6 votes, average: 3.67 out of 5)
Excelente código para exportación de resultados de consulta a excel, hasta convierte los formatos de fecha automaticamente, muy bueno, totalmente recomendado.
Ing. Yoel Asuan Ling
Software engineer
muy buen codigo y lo mas importante muy bien explicado y facil de implementar para principiantes como yo, tambien deja exportar a word.
Emerson:
Me da gusto saber que te fue util la información.
Saludos cordiales.
hola una preguntica esque como lo dije antes el codigo funciona de maravilla pero hoy al tratar de exportar los datos nuevamente ya no funciono … reuqiro pistas sobre lo que pudo haber pasado
gracias
A ver.. te marca algun error Emerson cuando los exportas nuevamente…?
El sistema debe permitir exportar tantas veces lo requieras, no tiene ningun lìmite al respecto.
Checa y nos dices por fas.
Saludos cordiales.
No me funciona me salen errores de este tipo
Warning: Cannot modify header information - headers already sent by (output started at…”
que hagoooo
hola a todos error de principiante habia borrado un aparte del codigo… gracias por ayudarme funciona d emaravilla
gelejimar :
Modificaste parte del code … pusiste algun head a tu page donde colocaste el code…?
Saludos cordiales.
me podrias explicar como hago la misma exportacion pero a txt
gracias
muy bueno, simple, facil de aplicar, cumple el objetivo con casi nada de codigo, excelente
gracias
Estupendo código de exportacion, pero no me permite elegir entre abrir o guardar, me guarda directamente y no me muestra la página. Puede ser algo de configuracion del navegador? uso Camino en un iMac.
gracias
Claro, denbe preguntarte en dónde quieres guardarlo.
Checa la conf. de tu navegador, probablemente sea algo de eso.
Saludos y gracias por tu visita.
hola quiero exportar una consulta php a exccel como Emerson y ya puse el codigo que le mandaste pero no lo hace mi pregunta es que exporta, ¿los resultados que aparecen en pantalla o que?
Te explico bien, hice una consulta a una base de datos y la aparecen en pantalla en forma de tabla lo cual esta perfecto pero quiero saber como exportar esa tabla a excel crei que lo haria con este codigo que esta arriba y abre el cuadro que te pregunta si quieres abrirlo guardarlo o cancelar pero me manda un mensaje de que no se puede leer el archivo ¿por que?
hola, disculpa me manda el mismo error que a gelejimar, Warning: Cannot modify header information - headers already sent by, primero lo utilice en otra maquina y funcionaba bien, pero ahora que utilizo otra maquina con una version de exel mas reciente me muestra el error. me podrias ayudar por favor??
es urgente..
saludos
realice el codigo y al momento de ejecuta abre el Excel pero manda el siguiente mensaje “el arccivo que intenta abrir tiene otro formato que el especificado, compruebe que el archivo no esta dañado y procede de un origen de confianza ¿desea abrirlo haora?” el archivo se abre pero no se visualizan las celdas y las columnas
a alguien le ha sucedido algo parecido???
hola tomasy a mi me paso lo mismo en excel 2007 ya que descarga el archivo con formato web se solucionan diciendole que si sequiere abrir y cambiandole el formato a hoja de excel 97-2003 espero te funcione