Crear pdf desde php haciendo una consulta a MySQL

Mientras trabajamos con php en algún proyecto nos encomendarán generar un reporte sobre los registros que se tienen en nuestra base de datos, suena sencillo y lo es, sólo es cuestión de saber buscarle, si llegaste a ésta página entonces tu si sabes buscar 😉

Primero utilizaremos las clases «class.ezpdf.php» y «class.pdf.php», además de la carpeta «fonts» por si deseamos hacer uso de distintas fuentes. Incluimos nuestro archivo ezpdf de la siguiente manera(se encuentra en raíz del proyecto.
[php]require_once(‘class.ezpdf.php’);
$pdf = new Cezpdf(‘A4’); //seleccionamos tipo de hoja
$pdf->selectFont(‘fonts/Helvetica.afm’); //seleccionamos fuente a utilizar[/php]

Haremos nuestra consulta (podremos exportarla para no revolver código):
[php]
$bd_host = "localhost:3306"; //conexión localhost
$bd_usuario = "root"; //nombre usuario
$bd_password = "root"; //contraseña
$bd_base = "ost"; //nombre Base de Datos
//Hacemos la conexión y si no mostramos error
$con = mysql_connect($bd_host, $bd_usuario, $bd_password) or die("Error con la conexión");
//Seleccionamos la Base de Datos de nuestra consulta anterior.
mysql_select_db($bd_base, $con) or die("Error al seleccionar db");
//escribimos nuestra consulta
$sql="SELECT id,nombre,paterno,materno FROM alumnos";
//realizamos nuestra consulta
$resSql=mysql_query($sql) or die("<br>Error consulta</br>".mysql_error());
[/php]

Ahora ya tenemos nuestros datos dentro de la variable [php]$resSql[/php] habrá recorrer los datos y convertirlos en un array, eso lo podemos hacer con un while y no se nos olvide colocar los títulos:
[php]
while($row=mysql_fetch_row($resSql)){
//la estructura será ‘Nombre campo’=> posición del arreglo y la información
$data[]=array(‘Id’=>$row[0], ‘Nombre’=>$row[1],’Paterno’=>$row[2],’Materno’=>$row[3]);
}
$titles=array(‘Id’=>’Id’, ‘Nombre’=>’Nombre’,’Paterno’=>’Paterno’,’Materno’=>’Materno’);
[/php]

Y ya por último generamos el pdf:
[php]
$pdf->ezTable($data);
$pdf->ezStream();
[/php]

Y ¡Taran! ya tenemos nuestro pdf, en tablas y con la información que nos importa de los registros de nuestras bases de datos.

Les dejo los archivos para su ejemplo y claro deberán de tener su base de Datos creada y modificar los accesos.

generatePdfFromPhp