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.
y como sé que ya me quedó o.O
soy nueva en esto :S y estoy un poco perdida :S
Solo es cuestion de que lo ejecutes en tu servidor o en dado caso en tu server local, si lo vas a checar en tu servidor local te recomiendo que descargues xamp o wamp.
Excelente!!! muchas gracias mi hermano me has dado la respuesta que tanto he buscado, un saludo y nuevamente gracias 😉
si funciona pero con este tipo de consultas
EJ: SELECT * FROM orden WHERE CODIGOMAQ=’$codigo’ AND AREASOL=’$area’ AND PRIORIDAD=’$prioridad’
que incluyen comillas simples no funciona
Gracias por tu aporte, demasiado útil, principalmente cuando vas desempolvando los conocimiento s de programación, tal cual es mi caso.
Saludos!
No me funciona, me sale un letrero diciendo error al cargar el documento pdf
Como puedo cambiar la orientación de la hoja.
Ayuda porfavor!
Saludos!!
Hola para cambiar la orientacion modifica el archivo class.ezpdf.php
busca la linea que contenga:
function Cezpdf($paper=’a4′,$orientation=’Portrait’)
por
function Cezpdf($paper=’a4′,$orientation=’Landscape’)
Saludos
Buen día.
Muchas gracias, muy buen tuto y muy bien explicado, me funciona muy bien.
Solo tengo unas dudas, se puede establecer un tamaño predeterminado a las celdas?, es que cuando el dato del campo es extenso, la tabla queda incompleta, debido a que pasa del ancho de la hoja, o como se pudiera hacer para esto, otra cosa, cuando se necesite mas de 1 pagina, los datos quedaran incompletos, o en la siguiente empezaran los datos en el orden normal.
no se si me explique bien.
de antemano gracias por su respuesta.
la duda de cuando son más de 1 hoja, ya quedo, solo me gustaría saber si se puede especificar tamaño especifico a las celdas. Gracias
muy bien gracias por el aporte….muy bien de nuevo….saludos desde Venezuela
Excelente tu aporte, me funciono perfecto..gracias
Me aparece esto….alguien me puede ayudar por favor 😀
%PDF-1.3 %âãÏÓ 1 0 obj <> endobj 2 0 obj <> endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources <> /MediaBox [0.000 0.000 595.280 841.890] >> endobj 4 0 obj [/PDF /Text ] endobj 5 0 obj <> endobj 6 0 obj <> endobj 7 0 obj <> stream xœã2Ð300P@&‹Ò¹ô,À\äÎUˆE¨ÖÈÂ\ÏÌÄ@ÁÜÒRÏÂÒ@ÁbŠ ĬT…4BÚqhã SžÇ endstream endobj 8 0 obj <> stream xœã2Ð300P@&ƒÜ¹Ê¹Œ,ÌõÌL, õ,, r`»æ–‘…`ˆJK•–8TM0DSi»R ·ÙÀÍ<˜L•!’³lM,_ endstream endobj xref 0 9 0000000000 65535 f 0000000015 00000 n 0000000080 00000 n 0000000126 00000 n 0000000257 00000 n 0000000286 00000 n 0000000391 00000 n 0000000464 00000 n 0000000603 00000 n trailer <> startxref 762 %%EOF
ya lo arregle xd
hola, como lo solucionaste por favor.