En la red existen diversos scripts en PHP para generar documentos Word o Excel siguiendo el formato y código de estas aplicaciones de ofimática. Sin embargo, hay formas más sencillas de generar estos documentos que requieren menos conocimientos técnicos y prácticamente nada de programación.
Tanto el Word como el Excel son capaces de leer documentos en HTML. Prueba a crear una página en HTML con el bloc de notas, guarda el fichero con extensión .doc ó .xls. Comprobarás que el contenido puede visualizarse sin problemas.
Creando un Word o Excel a partir de HTML
Sabiendo esto, podemos recuperar la información de las consultas a la base de datos y pintarla en HTML, aplicándo el formato y distribución que deseemos, ya sea mediante tablas, párrafos, divs e incluso podremos aplicar estilos y colores.
Una vez hemos generado el documento en HTML sólo nos queda descargarlo. La opción básica es ir al menú Archivo, pulsar en Guardar Como e indicar la extensión correcta, sin embargo, esta medida es poco práctica, además de exigir ciertos conocimientos técnicos. Existe otro método que facilita esta tarea y permite forzar la descarga automáticamente. Para ello, podemos utilizar los headers de PHP.
header(«Content-Type: application/vnd.ms-excel»);
header(«content-disposition: attachment;filename=mifichero.xls»);
El Content-type especifica qué tipo de datos contiene el fichero a través del código MIME correspondiente (Multipurpouse Internet Mail Extensions, serie de especificaciones dirigidas al intercambio transparente de todo tipo de archivos a través de Internet). Cada tipo de fichero tiene uno o varios MIMEs. En Glosarium.com puedes encontrar el catálogo completo de códigos MIMEs. Por ejemplo, un fichero Excel tiene varios MIMEs (application/vnd.ms-excel, application/excel, application/x-excel, application/x-msexcel)
En la segunda línea especificamos el nombre del fichero que se va a descargar. Debemos indicar nombre y extensión.
¿Cómo cambio los margenes del documento Word con CSS?
Un truco para modificar los márgenes es crear un fichero con el Word, establecer los márgenes que deseemos y guardarlo Como Página Web. Abrimos el fichero con un editor HTML y recuperamos las CSS que ha generado automáticamente el Word. Tras limpiar un poco el código (tanto HTML como CSS), tendremos a nuestra disposición una plantilla para el Word con los márgenes que hemos especificado.
PHPDOCX (http://www.phpdocx.com) es una herramienta gratuita en PHP que en particular permite generar ficheros en PDF a partir de datos almacenados en una base de datos o cualquier otra fuente
GENIAL… gracias amigo, en 5 líneas me resolviste un problema que no encontré en más de 15 foros que visité. XD mil gracias…
Thank you for your sharing. I am worried that I lack creative ideas. It is your article that makes me full of hope. Thank you. But, I have a question, can you help me?