No se ustedes pero no me ha tocado tener que crear PDF a partir de los datos de una BD, pero como programador web sabia que eventualmente alguien llegaría solicitando algo similar para mi suerte el futuro Ingeniero de la república Luis Seijas desde la UCAB Guayana ya había tomado parte en el asunto sucede que en una de sus materias de programación le solicitaron que realizara esta tarea para un sistema que va dirigido al personal de Inparques EDO Bolívar. Me mando el código y acá lo publicamos:
[code type=PHP]
<?php
//Autor : Luis E Seijas S
//Email: luiseijasalomon@gmail.com
//Se libera bajo GPLv3
require(‘fpdf.php’);
/* Por defecto orientación vertical (P), unidades mm y tamaño papel DIN A4.
Otros posibles valores:
– Orientación apaisada (L).
– Unidades pt, cm, in.
– Tamaños Carta y Legal.
*/
//conectando con la base de datos
$cadena= “host=’127.0.0.1′ port=’5432′ dbname=’frances’ user=’flux’ password=’xxxxxxx'”;
$conexion = pg_connect($cadena) or die (“Error de conexionnnn.”.pg_last_error());
//ejecutando sentencias de reporte
$query=”SELECT * FROM palabras”;
$result = pg_query($conexion,$query) or die(‘ERROR AL INSERTAR DATOS: ‘ . pg_last_error());
$totales = pg_num_rows($result);
$columnas=pg_num_fields($result);
$pdf=new FPDF(‘L’,’mm’,’Legal’); /*Se define las propiedades de la página */
$pdf->AddPage(); /* Se añade una nueva página */
$pdf->SetFont(‘Arial’,’B’,16,’cp1250′); /* Se define el tipo de fuente: Arial en negrita de tamaño 16 */
//$pdf->Cell(30,10,’REPORTE’); /* Con Cell se añade texto a la página */
// Imprimir datos en pdf
while($fila=pg_fetch_row($result)){
$pdf->Cell(130,5,$fila[0]);
$pdf->Cell(77,5,$fila[1]);
$pdf->Cell(90,5,$fila[2]);
$pdf->Ln(10);
}
$pdf->Output(); /* El documento se cierra y se envía al navegador */
?>[/code]
Básicamente lo que se requiere acá es la librería de PDF llamada FPDF es una librería bastante popular ya que no la tuve que agregar manualmente simplemente la descargue de los repositorios de Debian estable con algo como esto:
aptitude install php-fpdf
Entonces, creamos el script cargamos la librería, hacemos las lineas de la conexión a la BD en este caso y como siempre por excelencia Postgresql, seguidamente el query de los datos que vamos a mostrar, creamos la pagina, ajustamos la fuente y demás parámetros, ya finalizando ajustamos los espacios entre las columnas y cerramos con la orden de Output. Si se configuro correctamente el código se deberá desplegar un PDF en el navegador listo para guardar imprimir etc… Genial no? y rápido lo mejor de todo es que la documentación de FPDF esta 100% en español y es fácil de usar. Eso es todo en esta entrega nuevamente agradecimientos a Luis E Seijas por su aporte y un saludo a todos los estudiantes de UCAB Guayana desde RERSC blog.