Programación básica en php (exportando a excel)


La exportación de datos es la función que permite a un software enviar la información que contiene  de su formato nativo al formato de otro software para que pueda ser manipulado por este.

El objetivo es proporcionar flexibilidad al sistema para que los usuarios puedan hacer estadísticas o reportes que el sistema no genera, no por un mal diseño, sino porque en el momento en que se hizo este no era necesario ya que recordemos que las organizaciones son entes dinámicos y por lo tanto sus necesidades cambian y la exportación de datos responde a esta necesidad de cambio.

Pero vamos a con el código necesario:

En este caso estamos pasando el listado completo de la tabla, pero igual se puede hacer que sea filtrada en base a algún dato a través de un formulario web.

EL programa lo que hará sera declarar al navegador que le esta enviando datos en el formato de excel, esto lo hace en el siguiente fragmento de código:

La instrucción “header” envía los encabezado que declaran el tipo de información, pero veamos con mas detalle

  • El primer header indica a través de los tipo MIME que la información que recibe el navegador es para ser vista en excel
  • El segundo header le indica que la información sera adjuntada o almacenada en un archivo llamado “archivo.xls” igual le puede poner cualquier nombre, y es con este nombre que se guardara la información.
  • El tercer header le indica que no se usara la cahe del navegador
  • El ultimo indica que el archivo no expira.
Después de los header se usa la instrucción “echo” para comenzar a crear una tabla con etiquetas en html, estos “echo” solo se usan para crear los encabezados de la tabla.
Se usa un ciclo “while” con la instrucción mysql_fetch_row para ir colocando los datos obtenidos de la consulta en el arreglo registro y a través de instrucciones “echo” se van agregando a la tabla como renglones usando nuevamente etiquetas de html.
Al final del ciclo cerramos  con la etiqueta </table> .Al poner a funcionar este modulo veremos la típica ventana de abrir o guardar.
Claro, esto será de acuerdo al navegador y la versión que usemos del mismo; en chrome por ejemplo, no nos pregunta nada, solo lo guarda en la carpeta descargas.
Ya sea que lo guardemos o lo abramos es posible que obtengamos el siguiente mensaje:
En este caso se debe a la versión de office que estamos usando, pero solo basta darle clic en el botón “si” y el resultado sera el siguiente:
Existen otros métodos para producir la exportación a excel, a través de la instalación de frameworks en el servidor pero este es el método mas sencillo.
De igual forma con unos ligeros cambios se puede hacer la exportación a .csv o a .txt
Igual que en los demas post les dejo el enlace para decargar el ejemplo completo.
Anuncios

Acerca de sistemasumma

Blog dedicado a la tecnología y a todos los estudiantes de sistemas, informatica, computación y afines
Esta entrada fue publicada en programacion y etiquetada , , , , , . Guarda el enlace permanente.

5 respuestas a Programación básica en php (exportando a excel)

  1. Michelle dijo:

    Hola, me ayudo mucho esto, me gustaría que me generara el archivo según mi búsqueda.
    ¿me podrían ayudar?

    Me gusta

  2. robert dijo:

    Y crees conveniente, migrar de delphi, como ves el futuro de delphi, crees que se extinga con tantas compraventas? es posible desbaratar la aplicacion actual desarrollada en delphi, a modulos, pero igual en delphi? el modelo MVC, es adecuado para estos desarrollos en delphi? perdón por preguntar tanto, pero por aca casi no hay con quien platicar estos temas. saludos.

    Me gusta

    • sistemasumma dijo:

      Delphi en definitiva se ha quedado un poco retrasado en funciones, si lo comparamos con las funciones de las tecnología web y del .net yque sobre todo ha olvidado el mercado de los dispositivos mobiles que ha tenido gran demanda en los últimos años.

      Sobre lo de desbaratar el programa, no se como lo hayan programado, pero si se hizo correctamente lo único que hay que hacer es crear un nuevo proyecto e ir agregando los formularios a ese nuevo proyecto e ir cuidando de las interacciones con los demás módulos que se agreguen, de hecho los lenguajes visuales correctamente utilizados poseen un alto grado de modularidad, pero como he dicho todo esta en como se programo el sistema.

      Aunque el modelo vista controlador (MVC) que comentas es aplicado a desarrollos web, siendo aplicada como una metodología de desarrollo creo que realmente es posible usarlo independientemente del lenguaje, de hecho originalmente fue pensado para desarrollar en SmallTalk, que como recordaras fue uno de los primeros lenguajes orientados a objeto

      Me gusta

  3. robert dijo:

    Excelente información, no sabía que se podia hacer asi.
    amigo, Tengo una pregunta, en cuanto a programacion con RAD tal como delphi, c++ builder o visual estudio, cuales son las tendencias actuales en cuanto a programacion, me piden migrar una aplicacion que ya se volvio muy grande, esta realizada en delphi, quieren hacerla modulos, que recomendarias?
    saludos

    Me gusta

    • sistemasumma dijo:

      En definitiva lo mas usado en estos momentos dentro de RAD es usar visual studio para desarrollar usando C sharp (c#), pero el problema mas grande que tendrias seria la base de datos, ya que deberas buscar un herramienta que te permita convertir del formato de base de datos que hayan usado con delphi a una base de datos de sql server.

      C# de la mano de microsoft se ha convertido en una herramienta muy poderosa con la cual puedes crear apliciones muy versatiles al poder integrarla con share poitn, azure y los servicios de bing. Hay muchisima información en el MSDN de microsoft sobre ello y tambien hay muchos cursos gratuitos (en ingles) proporcionados bajo demanda por microsoft

      Saludos y suerte

      Me gusta

¿Qué estas pensando?

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s