"No tenía miedo a las dificultades: lo que la asustaba era la obligación de tener que escoger un camino. Escoger un camino significaba abandonar otros. "

Soy una persona apasionada por todo lo que tiene que ver con Internet y las nuevas tecnologías. Soy autodidacta, y me encanta impartir clases...


Generación de un excel con PHP

Viernes 05 de Marzo de 2010

PHP y MySQL
Autor: César Cancino
Categoría: PHP y MySQL
Etiquetas Programación, php, mysl
Comentarios 5

Muchas veces necesitamos generar reportes para nuestros clientes, y sin lugar a dudas el formato mas popular para éstos es excel ( .xls ). A continuación les muestro un sencillo código que les permitirá convertir algún documento HTML a Excel, sin usar ningún Framework ni nada. Lo pueden usar tanto enlazado a una base de datos MYSQL o con algún archivo en el que deseen mostrar algún contenido mas estático.

¿Qué te gustaría compartir con nosotros?

Compartir

Muchas veces necesitamos generar reportes para nuestros clientes, y sin lugar a dudas el formato mas popular para éstos es excel ( .xls ).
A continuación les muestro un sencillo código que les permitirá convertir algún documento HTML a Excel, sin usar ningún Framework ni nada. Lo pueden usar tanto enlazado a una base de datos MYSQL o con algún archivo en el que deseen mostrar algún contenido mas estático.
Lo único que tenemos que hacer es poner este encabezado en nuestro script PHP para que el navegador lo muestre como un archivo .xls:

<?php
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=reporte.xls");
?>

A continuación les muestro un archivo que contiene una tabla en la que uso el clásico " hola mundo" con el que la gran mayoría de los programadores nos iniciamos en esto del código:

<?php
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=reporte.xls");
?>
<html>
<head>
<title>Excel</title>
</head>
<body>
<table border="1">
<tr>
<td>
Hola mundo
</td>
</tr>
</table>
</body>
</html>


5 Comentarios

  1. Alonso
    Jueves 28 de Noviembre de 2013

    y si uno quiere un reporte en pdf, se puede usar Ireport???

  2. Julio
    Jueves 19 de Septiembre de 2013

    Hola Cesar, antes que nada quería agradecerte porque tu curso esta siendo de mucha ayuda. Tengo una consulta estoy haciendo un as pruebas y tengo un fomr con datos quiero que se exporte al excel pero quiero ordenarlo un poco por columnas. A lo mejor mi pregunta es un poco tonta. Ejemplo: $dia=$_POST["dia"]; $mes=$_POST["mes"]; $año=$_POST["año"]; $tienda=$_POST["tienda"]; Las primeras 3 van en la misma celda eso lo logre pero el ultimo dato debería ir en la columna 2. Muchas gracias. Saludos.

  3. kinver
    Viernes 23 de Septiembre de 2011

    muy buena excelente todo el contenido aqui.

  4. Lenin
    Jueves 16 de Septiembre de 2010

    Gracias por este aporte, soy nuevo en este curso pero quiero aprender y estare visitando esta web, aun no trabajo pero cuando tenga algo colaborare para que esta enseñanza continue.

  5. Nicolas Garcia
    Jueves 14 de Octubre de 2010

    Hola amigo espero que el tiempo nos junte nuevamente y nos encontremos personalmente y conversemos como en tiempos aquellos: tengo una consulta en la linea 3 en el Filename=reporte.xls ¿reporte es el archivo en cuestion ?