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.
A mi tambien me sale en blanco mi excel que exporte y no c por que
Hola!
Yo igual que Natalia y Julian me gustaria saber como crear varias hojas en el mismo libro ¿¿¿???
Muchas gracias por adelantado
las etiquetas funcionan perfectamente pero no me exportan las imagenes cuando abro el documento lo exportó todo pero sin la imagen y te dice que no la encuentra, es como si no encontrara el camino, que se hace en ese caso
saludos diego
Yo tengo la misma duda que NATALIA.
En si el codigo que explican es muy bueno se resume a imprimir unas cabeceras para que reconozca que es un archivo de excel para descargar y de ahi en mas es solo generar una estructura como si fuera html con sus etiquetas respectivas.
Pero la GRAN PREGUNTA ES ¿como se puede agregar varias hojas en el mismo archivo??????, ejm, hoja1, hoja2, hoja3 etc, etc…
Gracias por la ayuda
Hola mira lo que pasa es que yo use el codigo que hay al inicio del blog y me genera el alchivo excel pero en blanco, podrias explicarme que pudo haber pasado
Emerson:
A ver mira este enlace http://www.ros.co.nz/pdf/. Tiene varios ejemplos y es muy interesante, permite hasta generarle seguridad de copiar y pegar al documento creado.
Checalo y me dices si te fue de utilidad.
Saludos cordiales.
hola daosorio otra vez yo con una inquietud tengo que exportar mis resultados de una pagina de php a un pdf tendrias un codigo como este de excel pero que me exporte a pdf sin tanto complique
gracias
holas bien explicado, pero como se puede ampliar este codigo para hacer varias hojas dentro del mismo archivo?
hoja1, hoja2, hoja3
gracias.
Fernando, algo que puedes hacer es lo siguiente:
– Crea un boton que mande a llamar la página que exporta los datos, al darle clic a ese botón lo hará es ‘ejecutar’ la consulta.
Checalo y me dices si te sirve.
Saludos y gracias por visitar mi blog.
hola alguien podria decirme como hacer lo mismo pero con um boton
waoo muchas gracias es justo lo que necesitaba
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
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, 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..
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 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?
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.
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
muy bueno, simple, facil de aplicar, cumple el objetivo con casi nada de codigo, excelente
gracias
me podrias explicar como hago la misma exportacion pero a txt
gracias
gelejimar :
Modificaste parte del code … pusiste algun head a tu page donde colocaste el code…?
Saludos cordiales.
hola a todos error de principiante habia borrado un aparte del codigo… gracias por ayudarme funciona d emaravilla
No me funciona me salen errores de este tipo
Warning: Cannot modify header information – headers already sent by (output started at…»
que hagoooo
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.
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
Emerson:
Me da gusto saber que te fue util la información.
Saludos cordiales.
muy buen codigo y lo mas importante muy bien explicado y facil de implementar para principiantes como yo, tambien deja exportar a word.