Generar documentos Desarrollo Web con PHP Ignacio Andrés González Desarrollo Web con PHP Generar documentos Cada vez es más frecuente realizar aplicaciones web donde es necesario generar documentos con la información disponible o incluso, realizar PDFs al vuelo. Generar PDF Existen diversas librerías para esta funcionalidad. FPDF (Free PDF) permite generar documentos PDF directamente desde PHP. Se basa en un amplio conjunto de funciones para confeccionar a medida el documento. HTML2PDF es una de las más extendidas, gratuita y sobre todo fácil de usar. Ha sido diseñado principalmente para manejar TABLAS anidadas y todavía no soporta todas las etiquetas HTML o sus atributos, aunque sí definiciones de estilos. Se trata de un conversor de HTML a PDF escrito en PHP4 (utilizando FPDF). Permite la conversión de HTML 4.01 o superior válido en formato PDF al vuelo. El código html tiene que estar bien construido; es decir, etiquetas bien cerradas, tablas correctamente anidads, etc. Además de convertir html, puede crear Codigo de barras y QRCodes de forma muy sencilla. Desarrollo Web con PHP Generar documentos Ejemplo de uso con HTML2PDF: Este código incluye un fichero (Ej_sencillo.php) y el html generado es convertido a pdf y devuelto al navegador // get the HTML ob_start(); // Iniciar búffering include(dirname(__FILE__).'/res/exemple00.php'); // Crea HTML desde fichero externo $content = ob_get_clean(); // Obtiene contenido del buffer y lo limpia // convert in PDF require_once(dirname(__FILE__).'/../html2pdf.class.php'); // Carga librería try { $html2pdf = new HTML2PDF('P', 'A4', 'fr'); // Genera documento pdf $html2pdf->pdf->SetDisplayMode('fullpage'); // Pantalla completa $html2pdf->setDefaultFont('Arial'); $html2pdf->writeHTML($content, isset($_GET['vuehtml'])); $html2pdf->Output('exemple00.pdf'); } // Envía a salida con nombre catch(HTML2PDF_exception $e) { echo $e; exit; } // Captura errores y les muestra Desarrollo Web con PHP Generar documentos Ejemplo de uso con HTML2PDF: Colección de ejemplos variados: Ejemplo importando un fichero html Importación de dos documentos Con ejecución de JavaScript Utilizando BookMark Generar código de barras Generar QRCodes Ejemplo de creación de un ticket Creación y aceptación de formularios Ej_sencillo.php Ej_2documentos.php Ej_javascript.php Ej_bookmark.php Ej_codigobarras.php Ej_qrcodes.php Ej_ticket.php Ej_forms.php Ejercicio: Crear un documento pdf a partir del código tabla_mysql.php que genera una tabla en html (Se facilita Generar_Documentos/tabla_mysql_pdf_original.php que genera el código correcto) (tabla_mysql_pdf.php) Desarrollo Web con PHP Generar documentos Exportación a documentos de Office: La exportación a documentos de office se gestiona de forma casi nativa ya que únicamente debemos generar los documentos mediante un header y php hace la conversión al vuelo. Generar documento Word: header("Content-type: application/vnd.ms-word"); header("Content-Disposition: attachment; filename=prueba.doc"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0,pre-check=0"); header("Pragma: public"); Generar documento Excel: header("Content-type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=prueba.xls"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0,pre-check=0"); header("Pragma: public"); Modificar tabla_mysql_pdf_original.php para poder indicar en la url el formato deseado y generar el documento: …/tabla_mysql_office.php?doc=DOC | XLS | PDF
© Copyright 2024