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.
como puedo hacer los títulos de forma vertical en vez de horizontal?
saludos
que tal amigo, me gusto tu codigo y funciona de maravilla en un localhost, pero al momento de usar en un servidor empieza con problemas, me podrias ayudar con esto?? estas sonn algunas lineas:
Warning: Cannot modify header information – headers already sent by (output started at G:\PleskVhosts\grupocadewi.com.mx\sistema.grupocadewi.com.mx\conexion.php:1) in G:\PleskVhosts\grupocadewi.com.mx\sistema.grupocadewi.com.mx\pdf\class.pdf.php on line 1916
en al linea 1917 y 1919,
por lo que veo intenta modificar la cabezera y he ahi el problema
Pero creo que es necesario que publiques la Base de datos.
Muchas gracias por la ayuda
EXCELENTE
Falta los datos de la base de Datos
Dónde encuentro la clase «class.pdf.php», de dónde la descargo?