Skip to Content »

Generar PDF con PHP y MySQL

  • 13/08/2007
  • 1:49 am
  • unijimpe

El presente ejemplo explica como generar un reporte en PDF extrayendo datos de MySQL utilizando PHP. Este ejemplo lo hacemos aprovechando el post anterior en el cual explicábamos como obtener datos de base de datos MySQL. Para la generación de PDF utilizaremos la clase R&OS: pdf class de la cual ya hemos comentado en Generar PDF con PHP.

pdf-php-mysql.gif

Crear el documento PDF
Lo primero es crear una instancia para la creación del documento PDF, para ello incluimos la librería class.ezpdf.php, luego creamos una variable del tipo Cezpdf en donde definimos el tipo de papel A4, luego definimos la fuente y los margenes.

PHP:
  1. require_once('class.ezpdf.php');
  2. $pdf =& new Cezpdf('a4');
  3. $pdf->selectFont('../fonts/courier.afm');
  4. $pdf->ezSetCmMargins(1,1,1.5,1.5);

Obtenemos los registros desde MySQL
Ahora procedemos a extraer los registros de nuestra base de datos, en este caso solo obtenemos el nombre, dirección y telefono de la tabla empresa de nuestra base de datos.

PHP:
  1. $conexion = mysql_connect("localhost", "usuario", "clave");
  2. mysql_select_db("demo", $conexion);
  3. $queEmp = "SELECT nombre, direccion, telefono FROM empresa";
  4. $resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
  5. $totEmp = mysql_num_rows($resEmp);

Creando el array de datos, títulos y opciones
A continuación procedemos a crear matrices que luego utilizaremos en la creación de nuestro PDF, en el caso que deseemos incluir una tabla con con datos debemos crear una matriz con estos datos, en nuestro caso asignamos los resultados de la consulta y le agregamos un campo adicional con un numero correlativo. Lo siguiente es crear la matriz con los nombres de la tabla, en este caso llamamos a esta matriz $titles en donde a cada campo agregado a la matriz de datos le hacemos corresponder un nombre que aparecerá como titulo de la fila. La tercera matriz indica los colores de las celdas, la orientación y el ancho de la tabla.

PHP:
  1. $ixx = 0;
  2. while($datatmp = mysql_fetch_assoc($resEmp)) {
  3.     $ixx = $ixx+1;
  4.     $data[] = array_merge($datatmp, array('num'=>$ixx));
  5. }
  6. $titles = array(
  7.                 'num'=>'<b>Num</b>',
  8.                 'nombre'=>'<b>Empresa</b>',
  9.                 'direccion'=>'<b>Direccion</b>',
  10.                 'telefono'=>'<b>Telefono</b>'
  11.             );
  12. $options = array(
  13.                 'shadeCol'=>array(0.9,0.9,0.9),
  14.                 'xOrientation'=>'center',
  15.                 'width'=>500
  16.             );

Imprimiendo los Resultados
Una vez que tenemos todos los datos preparados procedemos a generar el PDF con toda la información que deseamos. Iniciamos esto creando un titulo y subtitulo de texto, luego escribimos los resultados de la consulta con la función ezTable a la cual se pasamos los datos, títulos y opciones. Finalmente al final del documento agregamos la fecha y hora de la generación del documento.

PHP:
  1. $txttit = "<b>BLOG.UNIJIMPE.NET</b>\n";
  2. $txttit.= "Ejemplo de PDF con PHP y MYSQL \n";
  3.  
  4. $pdf->ezText($txttit, 12);
  5. $pdf->ezTable($data, $titles, '', $options);
  6. $pdf->ezText("\n\n\n", 10);
  7. $pdf->ezText("<b>Fecha:</b> ".date("d/m/Y"), 10);
  8. $pdf->ezText("<b>Hora:</b> ".date("H:i:s")."\n\n", 10);
  9. $pdf->ezStream();

Unimos todos estos bloques y tenemos listo nuestro script para generar reportes en PDF, pueden ver el ejemplo funcionando en php-mysql.php. Para finalizar les dejo los archivos del ejemplo para que lo prueben y modifiquen a sus necesidades.

Posts Relacionados

Total de Comentarios: 114

Publicidad
delfino
29/08/2007
11:58 pm

auxilio soy novato y necesito ayuda sobre fpdf para meter una imagen en una celda (no es encabezado y pie de pagina) ademas cambiar el tamaño de la fuente gracias please me urge gracias

NANCY
31/08/2007
2:51 am

como pongo el encabezado para el pdf y como puedo cambiar el tamaño de la letra que contiene la tabla

Harold
12/09/2007
7:24 pm

Por ahora no está sirviendo y no manda ningun error que es lo peor, seguiré tratando que está malo

harold
12/09/2007
9:05 pm

ahora me sale este error:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ‘Resource id #8′ at line 1

ayuda por favor

harold
12/09/2007
9:08 pm

este es el codigo:

## creo una instancia
include_once(’class.ezpdf.php’);
$pdf =& new Cezpdf(’a4′);
$pdf->selectFont(’../fonts/Courier.afm’);
$pdf->ezSetCmMargins(1,1,1.5,1.5);

//realizo la conexion
require (’connectionRoot.php’);
$queEmp = mysql_query(”SELECT nombre, apellido, ocupacion, nombreUsua FROM usuarios_blog”) or die(”Error al intentar Generar el reporte de Usuarios”);
$resEmp = mysql_query($queEmp, $link) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp)) {
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘num’=>’Num‘,
‘nombre’=>’Nombre de Usuario‘,
‘direccion’=>’Apellido‘,
‘telefono’=>’Ocupación‘,
‘nombreUsua’=>’Mail
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);

$txttit = “BLOG.UNIJIMPE.NET\n”;
$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;

$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();

13/09/2007
9:22 am

El problema es que en la variable donde debe estar el la consulta a la base de datos esta erronea:

$queEmp = mysql_query("SELECT nombre, apellido, ocupacion, nombreUsua FROM usuarios_blog") or die("Error al intentar Generar el reporte de Usuarios");
$resEmp = mysql_query($queEmp, $link) or die(mysql_error());

Debes reemplazarla por:

$queEmp = "SELECT nombre, apellido, ocupacion, nombreUsua FROM usuarios_blog";
$resEmp = mysql_query($queEmp, $link) or die(mysql_error());

Saludos

19/09/2007
8:44 pm

unijimpe eres un maestro man gracias y saludos desde colombia

sergio
21/09/2007
6:35 am

no soy muy experto en esto, pero me interesa el aporte, quien podria mandarme los archivos correctos?

enviar a sergioaguayo@prodigy.net.mx

Gracias

22/09/2007
2:01 am

las dos formas son correctas la primra opcion es mas abreviada nada mas, solo deberias quetarle esta linea.

$resEmp = mysql_query($queEmp, $link) or die(mysql_error());

ya que ya la estas usando en la primeras lineas, el codigo esta bien solo hay reduncancia de envios suerte

jose
22/09/2007
5:10 am

ola el codigo me corre perfectamente, pero tengo una curiosidad, el pdf me sale en forma vertical, como puedo hacer para hacerlo horizontal, espero me ayuden gracias.

22/09/2007
9:45 am

Hola, para asignar la orientación, esta se puede definir al inicializar el pdf, esto de la forma:

$pdf =& new Cezpdf(orientation='portrait');
$pdf =& new Cezpdf(orientation='landscape');

jose
24/09/2007
10:05 pm

Gracias mano, se te lo agradece ahora si me lo corre bien :D, mas bien no tendrán por ahí un código para pasarlo al excel :D

katy
29/09/2007
9:44 pm

Hola necesito su ayuda por favor hago todo lo que dice y me sale el pdf pero sin la informaci[on de la base, este es mi c[odigo

selectFont('pdf/fonts/Courier.afm');
$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect("localhost", "root", "");
mysql_select_db("sistema de elecciones", $conexion);

$queEmp = "SELECT LIST_NOM as a, LIST_NUM as b FROM LISTAS";
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp)) {

$ixx = $ixx+1;
$data[] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘num’=>’No.‘,
‘numERO’=>’NUMERO‘,
‘nombre’=>’LISTA‘,
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);

$txttit = “REPORTE DE LISTAS\n”;
$txttit.= “SISTEMA DE ELECCION DE DIGNIDADES \n”;

$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();
?>

29/09/2007
10:22 pm

El problema es que los campos de tu consulta no corresponden con los campos agregados es la tabla. Tu consulta obtiene los campos a y b:

$queEmp = "SELECT LIST_NOM as a, LIST_NUM as b FROM LISTAS";

Pero en tu tabla tu agregas los campos: numERO y nombre.

$titles = array(
‘num’=>’No.‘,
‘numERO’=>’NUMERO‘,
‘nombre’=>’LISTA‘,
);

Estos datos deben corresponder para que funcione correctamente.

katy
29/09/2007
10:41 pm

sii ya me salio no relacione esa parte muchas gracias!!!

03/10/2007
2:34 pm

Hola…

Puse este código:

selectFont(’../fonts/courier.afm’);
$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect(”localhost”, “root”, “”);
mysql_select_db(”nuke”, $conexion);
$queEmp = “SELECT catid, title, hometext FROM nuke_stories WHERE (catid=’1′)”;
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp)) {
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘catid’=>’Catid‘,
‘title’=>’Título‘,
‘hometext’=>’Hometext‘,
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);

$txttit = “VALORYEMPRESA\n”;
$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;

$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();
?>

y me salen códigos raros como estos:

%PDF-1.3 %âãÏÓ 1 0 obj > endobj 2 0 obj > endobj 3 0 obj > /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œµ“ÁjÂ@E÷ùŠ»¬›É{3I&“ÒDJc —¢Ñ”ÚTwýû¦ RKÂƒn†™Ëܳ8p½Q‰@«Pbf;B¹Ÿµj®[àéu8})

¿Sabéis a qué se debe?

Gracias!

J_uan_D
05/10/2007
1:05 am

ole,
me ha sido de mucha ayuda tu script, te lo agradezco. Quería comentarte dos cosas:

1. Por alguna razón me sale:
Parse error: syntax error, unexpected ‘=’
al insertar el código q pusiste para la orientación de la página.

2. Hay una manera de ajustar el ancho de las columnas?. Cómo lo hace por defecto?

Reitero mis agradecimientos…

Juan David

Omer Moreno
07/10/2007
2:07 am

Hola muy bueno el tutorial, pero nose porque pero si la consulta me genera que se yo 100 registros o mas creo como q para que de mas de 2 hojas, el pdf me queda corrupto no lo abre.

y otra cosa, esto no me funciona.

$pdf =& new Cezpdf(orientation=’landscape’);

me da este error:
Parse error: parse error, unexpected ‘=’ in D:\DESARROLLO\EASYPHP\localhost\www\selectnator\selectnator.php

Bueno de todas maneras ta muy bueno el tutorial :)

katy
12/10/2007
10:01 pm

Como puedo incluir una imagen en el reporte? por ejemplo un logo?

oswal
13/10/2007
2:24 am

Hola, una pregunta, los titles, del arreglo deben ser iguales a los nombres de las columnas de la tabla?
Gracias

13/10/2007
7:11 am

Oswal, no es necesario que sean los mismos pero si es requisitos que sean en la misma cantidad, por ejemplo si en tu consulta extraes 5 columnas entonces en el array titles debes poner 5 campos.

Victor Hugo
17/10/2007
2:07 am

Excelente forma para crar archivos en pdf, ahora estoy tratando de ponerle un nivel de seguridad que haga que nada mas puedan imprimir una sola vez el PDF.

Ale
25/10/2007
11:17 pm

alguien sabe donde c ponen los archivos de class.ezpdf.php… etc ya los puc en usr/share/php5 en Pear pero m sigue mandando un error como este:
Warning: include_once(class.ezpdf.php) [function.include-once]: failed to open stream: No such file or directory in /var/www/sysidata_control/admon/ejemplo1.php on line 3

Warning: include_once() [function.include]: Failed opening ‘class.ezpdf.php’ for inclusion (include_path=’.:/usr/share/php:/usr/share/pear’) in /var/www/sysidata_control/admon/ejemplo1.php on line 3

Ayuuudaaa!!

Jose Luis
26/10/2007
3:53 am

Javier:

revisa si tienes instalado el acrobat reader version 4.0 o superior

saludos,

Jose Luis
26/10/2007
3:55 am

J_uan_D, Omer Moreno:

la sintaxis correcta es: por ejemplo para configurar con tamaño carta Y en landscape:

$pdf =& new Cezpdf(’letter’,'landscape’);

saludos,

Jose Luis
26/10/2007
3:58 am

katy:

para poner una imagen

$pdf->addJpegFromFile(nombre_de_archivo,x,y,ancho,[opcional alto de imagen]);

ejemplo, ponemos la imagen logo7.jpg, en la posicion 20, 540, y que tenga un ancho de 100 pixeles

$pdf->addJpegFromFile(’logo7.jpg’,20,540,100);

ojo: la posición de la imagen es contada desde la esquina inferior izquierda.

saludos,

alberto
30/10/2007
3:19 pm

Hola soy un principiante y cuando quiero generar el pdf, me sale un mensage del acrobat diciendome que el archivo está corrupto y que no se puede abir, hago algo mal? he copiado el ejemplo tal cual y nada…
no se que puedo hacerrr

lyla
01/11/2007
3:42 am

hola he intentado hacerlo pero me sale este error:

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\salud1\class\DB_MySQL.class.php:3) in C:\wamp\www\salud1\paginas\class.pdf.php on line 1916

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\salud1\class\DB_MySQL.class.php:3) in C:\wamp\www\salud1\paginas\class.pdf.php on line 1917

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\salud1\class\DB_MySQL.class.php:3) in C:\wamp\www\salud1\paginas\class.pdf.php on line 1919
%PDF-1.3 %âãÏÓ 1 0 obj > endobj 2 0 obj > endobj 3 0 obj > >> /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œ}QANÃ0¼÷{„Ëv×±½vnT$mP[RލM)%P $~ ¤ªËe%wÆ3ãÁ¨­Ð(ñ‰T+æ ¬ Zœ¦×c¼›WŬÌpžUçPm!«=®ÓÈÚs³m½{}n`UCy™Ã²yrRÂ’ÌîoSˆ( ¡ý­pB”‚þÜ?зǿy3n­ Æ¢°þõB—ùû®÷;…Ú»Óëûåæé£9°hЊ?M)VÝö[Äe°B¶Ù#y †~B±AcÃB ëyÖ z‰ó‹^‹VZÛµØÃ­ S7AIGp w> endobj 9 0 obj > stream xœ=OÃ0†÷üŠa9lç;cQ ‰ö*(¨$D¢?CêbR[e¹áÕs÷>ºäÚ�)̈J5æŒÀ4puÁ3d`:€ ~ æJ“X–k”ë8¼éúm¿iÆœö“·HBb¦òÿµ8#‘bJV„ŒbpݾO}××V wÃKÈ)¶šœ˜B¥Ï°G§¼ÚýhÚzèë‘ã®éBV±e:µÊrBœaU¾¯Š§» ªç²Xå›±ˆE÷¥ƒmÂøóñ6á𙐘Ÿ¨ Eð‡ Ó slaýÃq¥æA—,Ilþ–wrN–¤> startxref 1311 %%EOF
porfis ayuda

lyla
01/11/2007
3:49 am

hola ya resolvi mi problema eran mis clases solo cambie require_once(”../class/config.php”);
require_once(”../class/DB_MySQL.class.php”); //Incluimos la clase para las consultas
$miconexion = new DB_MySQL;
$miconexion->conectar($dbase, $host, $user, $password);
por esto:
$conexion = mysql_connect(”localhost”, “usuario”, “contraseña”);

mysql_select_db(”salud”, $conexion);

ahora necesito agregar una imagen al pdf. ayuda

07/11/2007
11:35 am

La verdad es que lo probé y anda bàrbaro, lo unico que no puedo lograr es mostrar las fechas obtenidas de la tabla mysql en formato dia-mes-anio.
Alguien me puede ayudar?
Gracias desde ya.

mary
07/11/2007
5:18 pm

una pregunta como puedo poner la misma imagen en varias hojas espero que me puedan ayudar saludos

Javo
09/11/2007
12:06 pm

Tengo un problema y es que la fecha y la hora me aparecen superpuestas y la tabla me aparece miniaturizada sin los datos que supuestamente la consulta realiza, alguna sugerencia ?

Gracias

katy
18/11/2007
11:11 am

Muchas gracias Jose Luis me funciono!!!

Hernan Parada
20/11/2007
7:43 am

Me puedo justificar un texto.

Hernan Parada
20/11/2007
7:49 am

Hola la verdad es que no he podido justificar en texto, he cambiado las font, el texto lo he puesto en eztable, eztext, con justificación ful etc. alguien me puede decir si se puedo no, sino para buscar otra alternativa

Zéctor zapata
27/11/2007
9:25 am

amigos sigo con el problema que no me aparece nada. Cambie los campos en la consulta, la BD, ya no se que hacer, les dejo el codigo… que alguien me ayude por favor

selectFont(’../fonts/courier.afm’);
$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect(”localhost”);
mysql_select_db(”audit_db”, $conexion);
$queEmp = “SELECT NumControl, DescControl, ObjControl
FROM controles ORDER BY NumControl ASC”;
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp)) {
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘num’=>’Num‘,
‘NumControl’=>’NumControl‘,
‘DescControl’=>’Descripción del Control‘,
‘ObjControl’=>’Objetivo del Control
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);
$txttit = “BLOG.UNIJIMPE.NET\n”;
$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;

$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();
?>

Zéctor zapata
27/11/2007
9:58 am

como se si mi version php soporta pdf? tengo instalado phptriad

Salva
27/11/2007
2:41 pm

Todo perfecto, a excepcion de poner un logo jpg en la esquina superior izquierda. Mi codigo es:
$pdf->addJpegFromFile(’../images/Logo.jpg’,100,100,100);
pero no sale nada.
Alguna ayudita ?
Gracias de antemano.

enrique
27/11/2007
7:17 pm

se puede diseñar otro tipo de tabla por ejemplo que en la primera fila tenga dos columnas y en la siguiente fila tenga tres o algo asi?

Zéctor zapata
29/11/2007
10:02 am

Excelente el articulo,tutorial, como quieran llamarlo.

Como aporte, si es que les sirve a alguien:

1. tenia instalado phptriad y no hacia nada. Me cambie a appServ y perfecto!!

hechenle una mirada a el archivo class.ezpdf.php ahi pueden encontrar opciones para los tamaño de letras

Victor Villagran
29/11/2007
1:38 pm

¿Para q’ resulte la importacion de archivos, hay q’ crear un formulario? eso quiero saber, gracias?

marco
30/11/2007
4:36 pm

Que tal amigos programadores, tengo un pequeño inconveniente.. Quisiera saber si alguien sabe como arreglar la tabla que genera automaticamente si la tomo de la base de datos ya que sale centrada y cuando solo tienen 2 campos se ve vacio el reporte..le agradeceria si alguien sabe hacerlo me lo hagan saber este es mi correo premiun83@hotmail.com

hector
06/12/2007
12:47 pm

como puedo mostrar la tabla en forma horizontal?

Max
10/12/2007
1:21 pm

Hola unijimpe mi problema es: quiero que despues de imprimir la tabla debajo de ella aparezca un texto con la frase TOTAL y a un lado el resultado que proviene de un campo de otra tabla, lo que no consigo es poner este texto y el resultado en la misma linea(Ejemplo: “TOTAL: 3600″), ya que me aparece el TOTAL en una linea y el valor en la siguiente (No estoy usando encabezados en el campo del valor), no empleo el Xpos por que
este texto no tiene una posición específica, quiero que aparezca hasta que se impriman todos los registros de la tabla y, la cantidad de estos pueden variar. Te agradesco mucho de antemano tu ayuda.

Max
11/12/2007
4:29 pm

Encontre la respuesta a mi pregunta anterior, aquí se las dejo para quien le sea de utilidad, lo consegui de la siguiente forma:

$pdf->ezText(”TOTAL:“,8);
$pdf->ezSetDy(10);
$pdf->ezTable($data,$titles, ”,$options);

Diego
14/12/2007
5:19 am

Pues yo he observado que me funciona a la perfección con el Adobe reader 7, pero no con la versión 8 que no pinta nada y el ADOBE acrobat 6 me dice que el fichero esta dañado.

¿Alguien sabe por qué?.

Gracias.

26/12/2007
11:38 am

lyla tengo el mismo error me puedes explicar como lo solucionaste soy nuevo en esto

José David
28/12/2007
7:46 am

HOLA! a mi se me presento el siguiente problema: –cuando montaba el script y lo ponia a correr en mi aplicación, me decia que la fuente no se encontraba en el directorio de recursos y se sustituira por helvica.—

Si a alguien se le presenta ese mismo error lo que tiene que hacer es extraer todos los archivos del .zip que se descarga, y este proceso saca una carpeta fonts y como tres archivos mas, se debe copiar la carpeta fonts en la carpeta donde estan todas las paginas de tu aplicacion y luego poner a correr todo de nuevo…asi el error desaparece y se podra observa el pdf….espero que a alquien le sirva…chaoss

Osita
07/01/2008
1:27 pm

AYUDA PORFAVOR¡¡¡¡

ESTOY HACIENDO MIS PRACTICAS PROFESIONALES Y SI NO TERMINO ESTE SISTEMA NO ME TITULO….. Y LO QUE ME FALTA ES GENERAR REPORTES EN PDF…
CUANDO VI ESTA PAGINA PENSE YA TENIA EL PROBLEMA SOLUCIONADO.. PERO NO… YA CAMBIE LA BASE DE DATOS, LA TABLA.. PEOR ME SALE ESTO:

%PDF-1.3 %âãÏÓ 1 0 obj <> endobj 2 0 obj <> endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources << /ProcSet 4 0 R /Font <> >> /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œm?oÂ@ Gw>Åo¤‹c_îâKFÔ¤Pñ’ˆc`¬ U… ©ºõÛCAH ¼>ËÏ~ƒQ‚wCËH,i‡¬ˆ#Fú†£éâÖóÉûdÖÖ4¯Ó ÒuÜíFOâ‹çÝzß~¾{ì:´¯ ¶ýí¸Åf›Õr äLNý¿é‘‡H*÷J ž ¥Á’Î ~þÙ_ï^ øVÐtÛ¯êòèã¬K昣‘ÁL¥ºqÿkÛÄU,Un¸ŠXRn$ª¤·Ä¾Wdá endstream endobj 8 0 obj <> endobj xref 0 9 0000000000 65535 f 0000000015 00000 n 0000000080 00000 n 0000000126 00000 n 0000000280 00000 n 0000000309 00000 n 0000000414 00000 n 0000000477 00000 n 0000000750 00000 n trailer <> startxref 857 %%EOF

PORFA AYUDENME URGE… GRACIAS

losiram
09/01/2008
3:08 pm

hola kisiera saber si se puede k la infomacion k aparece en al siguiente pagina en la parte del centro se puede enviar tal como esta en pdf los encabezados son etiquetas y la informacion k despliega son consultas a una base de datos mysql se puede por fis si me dicen como se los agradecere infinitamente
http://www.bitacoraordenamiento.yucatan.gob.mx/bitacora/ugas.php?IdUga=11
kiero k esa informacion este en un pdf pa k el usuario imprima dixa informacion o ay alguna otra manera de realizarlo??

Jose Rangel
10/01/2008
3:55 pm

a ver necesito colocar encabezados. es decir una imagen por si la data excede el tamaño de una hoja. normalmente se crea la segunda, pero sin el encabezado o la imgen que tengo por emcabezado en la primera. COMO HAGO ESO please!!!…

Elizabeth
11/01/2008
3:38 pm

Hola, he trabajado con estos ejemplos y los eh utilizado con mi base de datos con mucho exito, solo un problema, como puedo cambiar el tamaño de letra que contiene la tabla gracias

el rulas
14/01/2008
6:39 pm

me sale lo siguiente no se cual sea el motivo me podrian ayudar en este embrollo
la salida que obtengo es la siguiente
%PDF-1.3 %âãÏÓ 1 0 obj <> endobj 2 0 obj <> endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources << /ProcSet 4 0 R /Font <> >> /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œ}QËR1¼ïWÌQ/ÃL6¯åH± endobj 9 0 obj <> stream xœ}ÍNÃ0„ïyŠ9ÂÅxíÍ&¾”wð DMе ªiy}ùÁ q/>Œ¾Ï;“=zp¡„5 [*§¾ÆÃ3´Òð{àŽîá;%+2ÿW3OôbZö*ùg77Šåê·)™ ŠD?ýü{é¢ endstream endobj xref 0 10 0000000000 65535 f 0000000015 00000 n 0000000080 00000 n 0000000126 00000 n 0000000280 00000 n 0000000309 00000 n 0000000414 00000 n 0000000487 00000 n 0000000868 00000 n 0000000975 00000 n trailer <> startxref 1296 %%EOF

fernando gibert
22/01/2008
6:33 am

hola a todos,

me funciona el ejemplo de maravilla en esayphp1.8

pero en easyphp2.01b salen textos con signos extraños.

existen unas clases para este nuevo php+mysql ???

gracias

Joel
28/01/2008
2:36 pm

Me funciono de maravilla, pero ahora necesito cambiar el formato del PDF, ok, les explico…..

Estoy trabajando en un proyecto para darle su estado de cuenta a mis clientes por medio de una pagina web, entonces tengo una plantilla en php donde le pide el ID del cliente….una vez puesto el ID, este hace un SELECT a mi base de datos y trae los resultados los cuales serian (No.Cliente, Saldo Actual, Minimo a pagar, Fecha Limite de Pago, etc..) Lo que me intereza saber es como puedo modificar el archivo “class.ezpdf”, para poder hacer una plantilla diferente
??… no se si me explico…espero que me puedan ayudar.

Alejandro
28/01/2008
9:08 pm

Muy buena herramienta, muy interesante. Pero tengo un problema, cuando saco datos de mi base de datos en el PDF generado los acentos salen como signos raros. Alguna idea?

gracias

victor
29/01/2008
12:11 am

como podria imprimir sobre un diseño de hoja en pdf?? es tipo un diploma que ya tengo pero quiero que cada uno lo imprima en su casa y ya salga el diseño…. existe algun metodo para que no imprima sobre un documento pdf en blanco si no sobre uno diseñado??

Muchas gracias

Joel
29/01/2008
3:25 pm

Esperemos que algun alma de Dios nos responda :)

victor
29/01/2008
5:17 pm

ya estuve buscando documentacion, entrando a mas foros pero no hay nada claro mas que una opcionpara agregar imagen tipo jpg png o gif pero no se explica muy bien su uso…. aver si nos quieren responder….

30/01/2008
10:09 pm

Para los visitantes que desean implementar PDFs basados en un diseño previo, pueden utilizar una imagen que contenga el diseño deseado como fondo y sobre el escribir el contenido deseado.
Si desean aprender mas de este tema pueden revisar: http://blog.unijimpe.net/pdfs-con-fondo-utilizando-php/

Alejandro
31/01/2008
12:16 pm

Sigo sin poder poner acentos en el PDF, y me doy cuenta que en el ejemplo de la tabla, puso los acentos sin problemas, alguna idea? tal vez sea configuración de la base de datos o algo por el estilo, por favor ayuda!! :D

01/02/2008
2:05 am

hola que tal:

para los que tengan este problema:
%PDF-1.3 %âãÏÓ 1 0 obj endobj 2 0 obj endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources << /ProcSet 4 0 R /Font >> /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œ}QËR1¼ïWÌQ/ÃL6¯åH± endobj 9 0 obj stream xœ}ÍNÃ0„ïyŠ9ÂÅxíÍ&¾”wð DMе ªiy}ùÁ q/>Œ¾Ï;“=zp¡„5 [*§¾ÆÃ3´Òð{àŽîá;%+2ÿW3OôbZö*ùg77Šåê·)™ ŠD?ýü{é¢ endstream endobj xref 0 10 0000000000 65535 f 0000000015 00000 n 0000000080 00000 n 0000000126 00000 n 0000000280 00000 n

se “soluciona” utilizando un explorador diferente al IE, ya sea mozilla u otro, (sigo en buskeda para el cochino IE)

ALGUIEN sabe por ke no puedo agregarmas de una imagen y ke no pese mas de 7kb.. el caso es ke tengo tres imagenes ke poner pero son mayor de 7 kb, (no me deja ) si solo pongo una, tengo que bajar la calidad hasta ke pese 6kb.. ke raiiooss!!!

ayuda pls..

aahhh, saben por ke no me jala
$pdf->ezText(”Fecha: “.date(”d/m/Y”),10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”,10);

saludos

01/02/2008
2:07 am

ESPERO Y EL POST ANTERIOR LO LEA OSITA.. SE VEIA DESEPERADA… je

FELIPE
04/02/2008
10:35 am

MUCHAS GRACIAS REALICE LA SALIDA DE REGISTRO DE LA BASE DE DATOS DE LA EXPLICACION AHORA SIGO CON MI PROYECTO DE GRADO DE TECNOLOGO ¿ LA CONEXION A UNA BASE DE DATOS CON SU RESPECTIVA PAGINA WEB PERO REALIZADA CON DREAMWEAVER LA CONEXION A LA BASE DE DATOS ES LO MISMO ? ¡ESPERO QUE SI!

Mandujano
05/02/2008
11:21 am

Cuando quiero insertar texto con acentos o ñ’s me aparecen caracteres raros? alguna idea? por favor me esta volviendo loco esto..
GRacias por cualquier aporte

Marianelly Arismendi
08/02/2008
8:52 am

Hola necesito saber como en un mismo documento de PDF intercalar la orientacion de las paginas, es decir, que un mismo documento tener paginas con orientacion vertical u horizontal.

Pablo
09/02/2008
6:43 am

Si te salen signos raros, comprueba que la ruta es la correcta en la siguiente línea:
$pdf->selectFont(’fonts/courier.afm’);

12/02/2008
1:14 pm

Hola
excelente el ejemplo y la explicación, lo estoy poniendo en practica, hay alguna forma que en unos de los campos al tener nombres de archivos *.jpg me muestre la imagen, que tengo guardada en el servidor ,en una de las 3 columnas
saludos
gracias

29/02/2008
12:32 pm

hola necesito una ayuda, estoy realizando una aplicacion, en el momento de enviar el reporte al pdf…me sale codigos extraños..hice lo que esta en el tutorial y nada….ahh donde tengo q ubicar las clases exactamente..los codigos que me aparecen son estos!!

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\ejemplo1\php-mysql.php.php:9) in C:\wamp\www\ejemplo1\class.pdf.php on line 1916

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\ejemplo1\php-mysql.php.php:9) in C:\wamp\www\ejemplo1\class.pdf.php on line 1917

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\ejemplo1\php-mysql.php.php:9) in C:\wamp\www\ejemplo1\class.pdf.php on line 1919
%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œµ‘AOƒ@„ïüŠ9êÞ®PXnA1°âØ´1q©½[#¦¥ML¼¼ÌÎî|ÉÛ1–%ln:œà1fz‚Pn`Å`ÜÔr \…yö=äHó0Hq¡Hƒ,‰“0“> stream xœuÐÁ €0Ð{§`‚Ô˜À»®¡g×·jÐ¶Ø ‡Ÿ~ `DD(ç2‚# ‰cš„(Š"ì` ³ÞÉë#ÙIîHqR:RÔ9b+-q’œ¤N{¾”)UrÉ÷C¹¯Þg‰)*:¾]Eë Y¬N 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 0000000783 00000 n trailer <> startxref 966 %%EOF

emilio landete
02/03/2008
6:11 pm

podéis indicarme por qué dá el siguiente error, he buscado en internet pero no he visto solución. Gracias.

Fatal error: Class cezpdf: Cannot inherit from undefined class cpdf in /home/cnnhost/public_html/pdf/class.ezpdf.php on line 5

Rosa
05/03/2008
4:06 am

Estoy usando la libreria R&0s para la generacion de PDF con PHP y me va de maravilla.
Pero ahora el usuario me ha pedido la siguiente petición, no solo quiere que aparezca en imagen, sino q DIRECTAMENTE SE MANDE A LA IMPRESORA.
He estado viendo en foros con la clase FPDF, usando codigo javascript, pero sinceramente, lo estoy intentando equiparar para Cezpdf y no me va y claro, no me gustaria cambiar todo a la clase FPDF si me puedes dar una pista te lo agradeceria.
Muchas gracias.

Ser
19/03/2008
7:54 am

se debe de configurar algo en el php.ini para que funcione el codigo al trabajar con pdf?

Cecil
19/03/2008
2:37 pm

Alguien sabe que función usar para que imprima el número de página.

Raquel
02/04/2008
5:56 am

Cecil, aunque supongo que ya sabrás como hacerlo, por si las moscas:

$pdf->ezStartPageNumbers(500,18,10,”,’Pagina : {PAGENUM} de {TOTALPAGENUM}’,1);

Prueba, creo que era así…

Raquel
02/04/2008
6:02 am

Hola!
yo quisiera saber si en vez de $titles = array() podría utilizar otra para que no saliera el resultado de la bbdd siempre debajo, algo así:
Id: 400052
En vez de:
Id:
400052
Vamos, que no salga como título…
Gracias de antemano!!

Vinny
07/04/2008
2:50 pm

Hola a todos necesito saber como puedo realizar graficos estadisticos y generar informes en pdf desde php

frank
07/04/2008
8:58 pm

Por favor urgente que alguien se apiade de mi,saben como guardar un pdf generado con esta libreria?. Ya se que puede ser una tonteria por que e visto con otras librerias que se genera con una linea de codigo pero por nada hago que funcione con esta y en la red no encuentro nada. Por favor lo necesito urgente.

Rodrigo
09/04/2008
2:14 pm

Esta es una respuesta para javo

Tengo un problema y es que la fecha y la hora me aparecen superpuestas y la tabla me aparece miniaturizada sin los datos que supuestamente la consulta realiza, alguna sugerencia ?

Lo que tienes que hacer es copiar la carpeta fonts a tu directorio donde estes trabajando porque si no no se visualiza nada

Miriam Lara
10/04/2008
2:45 pm

Hola,quisiera saber si alguien me puede ayudar a saber como puedo combinar información de dos arras para imprimirla en un pdf con php

Nay
13/04/2008
12:06 am

ya hice todo copie el codigo tal como se indica pero nada me sale el pdf pero no me muetra la informacion inclusive ni los titulos y la hora mi codigo es el siguienteselectFont(’../fonts/courier.afm’);
$pdf->ezSetCmMargins(1,1,1.5,1.5);
$conexion = mysql_connect(”localhost”,”root”,”");
mysql_select_db(”celeste”);
$queEmp = “SELECT nombre, direccion, telefono FROM cliente ORDER BY nombre ASC”;
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

$ixx = 0;
while($datatmp = mysql_fetch_array($resEmp,MYSQL_ASSOC)) {
$ixx = $ixx+1;
$data[ixx] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘num’=>’Num‘,
‘nombre’=>’Nombre‘,
‘direccion’=>’Direccion‘,
‘telefono’=>’Telefono
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);
$txttit= “BLOG.UNIJIMPE.NET\n”;
$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;

$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();
?>
y ya cheque mis variables por lo cual descarto esa posibilidad
alguien puede ayudarme?

Nay
13/04/2008
1:53 am

ya me salio y me sirvio mucho
el codigo mi problema era que no cargue la carpeta de las fuentes

miguel
13/04/2008
3:28 pm

me sale el archivo pdf pero sin datos, no me muestra los datos de mi base, alguien podria ayudarme por favor, este es mi codigo:

selectFont(’../fonts/courier.afm’);

$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect(”localhost”, “root”, “”);

mysql_select_db(”demo”,$conexion);

$queEmp =”SELECT nombre, direccion, telefono FROM empresa”;

$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());

$totEmp = mysql_num_rows($resEmp);

$ixx = 0;

while($datatmp = mysql_fetch_assoc($resEmp)) {

$ixx = $ixx+1;

$data[] = array_merge($datatmp, array(’num’=>$ixx));

}

$titles = array(

‘num’=>’Num‘,

‘nombre’=>’Empresa‘,

‘direccion’=>’Direccion‘,

‘telefono’=>’Telefono

);

$options = array(

’shadeCol’=>array(0.9,0.9,0.9),

‘xOrientation’=>’center’,

‘width’=>500

);

$txttit = “BLOG.UNIJIMPE.NET\n”;

$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;

$pdf->ezText($txttit, 12);

$pdf->ezTable($data, $titles, ”, $options);

$pdf->ezText(”\n\n\n”, 10);

$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);

$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);

$pdf->ezStream();

?>

miguel
13/04/2008
3:29 pm

mi base de datos se llama demo y tiene una tabla empresa con los campos nombre direccion y telefono pero no se por q no muestra los datos en el pdf

17/04/2008
10:24 am

hola que tal saludos gracias por toda la informacion que publicas en tu blog estoy recien iniciando para crear reportes en pdf actualmente estoy trabajando en un proyecto de nomina necesito saber si se puede meter una imagen en pdf ya que necesito que los recibos de pago tengan el logo de la empresa manejo con tablas y que me liste los trabajadores por cada pagina pero el tamaño para cuadrar el recibo no es hoja estandar sino por medidas la cuestion es la siguiente si tienes algun ejemplo o pagina que me puedas recomendar mucho te lo agradeceria

26/04/2008
10:05 pm

Hola, hice un formulario de consulta con Dreamweaver y perfecto; el resultado me lo da con una tabla dinámica extrayendo la info de la bd en mysql pero quiero que ese resultado me lo de en pdf. no se como poner tu código a ese archivo para que el resultado salga en pdf. (es una tabla).

LOSCAR
28/04/2008
9:14 am

hola amigos use este ejemplo para crear un pdf! mi problema es que la dimencion de algunos campos es muy pequeño como hago para cambiar el tamaño. mas especificamente del campo d_proyecto (quiero q sea mas gran q el resto) aqui les envio mi codigo.. de ante mano agradesco la ayuda q me puedan prestar

ezImage(”guarico.jpg”, ‘none’, 90, ‘none’, ‘left’);
$pdf->ezText(”");
$pdf->selectFont(’./Times-Roman.afm’);
$pdf->ezSetCmMargins(2,2,2,2);
$conexion = mysql_connect(”localhost”, “root”, “coplan”);
mysql_select_db(”licitacion”, $conexion);
$queEmp = “SELECT año, num, fon, d_proyecto,m_proyecto, f_1invitacion,f_1acto, info_1, f_2acto,info_2,f_envio, em_ga, mon_ga, respon, esta FROM lic_g”;
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
//$totEmp = mysql_num_rows($resEmp);
$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp)) {
$data[] = array_merge($datatmp);
}
$titulo = array(

‘año’=>’Año‘,
‘num’=>’Num‘,
‘fon’=>’Fondo‘,
‘d_proyecto’=>”Descripcion de Proyectoa“,
‘m_proyecto’=>”Monto Disponible“,
‘f_1invitacion’=>”Fecha de\nInvitacion“,
‘f_1acto’=>”Fecha de\n1er Acto “,
‘info_1′=>”Informe\nSobre 1“,
‘f_2acto’=>”Fecha\n2do Acto“,
‘info_2′=>”Informe\nSobre 2“,
‘f_envio’=>”Fecha\nEnvio“,
‘em_ga’=>”Empresa\nGanadora“,
‘mon_ga’=>”Monto Ofertado“,
‘respon’=>”Responsable“,
‘esta’=>”Estatus“,

);

$options = array(

’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>750,
//’fontSize’=>10

);

$ti= “Republica Bolivariana de Venezuela “;
$go= “Gobernacion del Estado Guarico“;
$co= “Comision de Contrataciones\n\n”;
$tip=”Concurso Abierto\n\n”;

$pdf->ezText($ti,12,array(’justification’=>’center’));
$pdf->ezText($go,12,array(’justification’=>’center’));
$pdf->ezText($co,12,array(’justification’=>’center’));
$pdf->ezText($tip,14,array(’justification’=>’center’));
$pdf->ezTable($data, $titulo,” ,$options);

$pdf->ezText(”\nEste documente sin firma y sello de la Comision Tecnica de Licitacion no tiene valides alguna”,5, array(’justification’=>’center’));
$pdf->ezText(”\nFecha: “.date(”d/m/Y”), 10, 10);
$pdf->ezText(”Hora: “.date(”H:i:s”), 10);
$pdf->ezStream();

?>

Bruno
28/04/2008
11:18 am

buenas tengo una dudas…. prepare el codigo pero cuando se genera el pdf no me muestra la info obtenida del sql… a ver si me ayudan. Gracias….

Bruno
28/04/2008
11:19 am

require_once(’class.ezpdf.php’);
$pdf =& new Cezpdf(’a4′);
$pdf->selectFont(’../fonts/courier.afm’);
$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect(”localhost”, “DATOS”, “DATOS”);
mysql_select_db(”cmit”, $conexion);
$queEmp = “SELECT zona, tipo, interno FROM cmit_matafuegos”;
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp)) {
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘num’=>’Num‘,
‘nombre’=>’Zona‘,
‘direccion’=>’Tipo‘,
‘telefono’=>’Interno
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);
$txttit = “BLOG.UNIJIMPE.NET\n”;
$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;

$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();

bruno
29/04/2008
6:42 am

gracias a todos ya encontre el error….
$titles = array(
‘id’=>’Num‘,
‘zona’=>’Zona‘,
‘tipo’=>’Cliente‘,
‘carga’=>’Carga‘,
‘interno’=>’otro campo

este aray tiene que tener los nombres q tienen los campos de la tabla1….

gonzalo
01/05/2008
11:46 pm

gracias….muchas gracias

liamxxx10
22/05/2008
3:08 pm

hay alguna maner de darle formato a las tablas para que se vea mas presentable??

kike
25/05/2008
3:12 am

Hola que tal, oye disculpa, como podria poner la fecha en español??, tengo un script en php pero no se como integrarlo para que me imprima la fecha en español, es decir 25 de Mayo de 2008, en lugar de 25 de May de 2008?
Gracias

25/05/2008
10:58 am

PHP por defecto trae las fechas en ingles, entonces debes crear un array con los nombres de los meses, por ejemplo:

$ames[1] = “Enero”;

$ames[12] = “Diciembre”;

Luego la fecha la puedes escribir como:

echo date("d").' de '.$ames[date("m")].’ de ‘.date(”Y”);

diana
30/05/2008
11:27 am

HOla
Super este articuolo, pero tengo un problema, yo trabajo con ubuntu y al ejecutar el .php me muestra en l browser (include_path=’.:/opt/lampp/lib/php’) in Unknown on line 0
no se q hacer

Roberto
31/05/2008
10:21 pm

Gracias por el articulo me resulto de mucha ayuda, esta realmente bueno.
Por si alguien esta rescatando fechas y desea que se vean en formato español yo lo hice dándole formato al rescatar el valor en Mysql:
SELECT … , DATE_FORMAT(dato_fecha,’%d-%m-%Y’) as dato_fecha FROM …
Lo mismo pueden aplicar al crear Excel desde Php.

Saludos

03/06/2008
2:19 am

Hola, estoy haciendo un sistema de recibos que recoge datos de una base de datos, pero no quero que me lo imprima en una tabla, necesito sacar los datos de la base y colocarlos sin sistema de tabla, es decir, poder ponerlo en las coordenadas del documento donde van los datos del recibo. Un saludo y gracias

03/06/2008
9:15 am

hola que tal de ante mano gracias por el aporte mi pregunta es la siguiente yo entiendo perfectamente la funcionalidad del script pero lo que quiero es aprender a posicionar las imagenes por ejemplo encabezados y pie de pagina en le documento pdf sin mas por siempre Armando jose mesia.

03/06/2008
2:56 pm

Excelente ejemplo.Pero me gustaria almacenar el pdf automaticamente en una carpeta, y poder visualizarlo en mi pag. web.
Saludos.

sebass
08/06/2008
6:40 pm

tengo el mismoo problema que lyla y e hehco miles de modificaciones y no pasa nada

sebass
08/06/2008
6:41 pm

me sale esto:

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\lubricentro\pdfprueba.php:1) in C:\AppServ\www\lubricentro\class.pdf.php on line 1916

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\lubricentro\pdfprueba.php:1) in C:\AppServ\www\lubricentro\class.pdf.php on line 1917

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\lubricentro\pdfprueba.php:1) in C:\AppServ\www\lubricentro\class.pdf.php on line 1919
%PDF-1.3 %âãÏÓ 1 0 obj <> endobj 2 0 obj <> endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources << /ProcSet 4 0 R /Font <> >> /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œ}’KSÂ0…÷üŠ»ÔÍå&Mó`ÉX h]¸bjZ”¦\øïuªun2““|’9′é ScN ŒFbÒú#Œ#Aº¸ÎnÆx¿˜^OçËIz é’´×aµ@&ä)›ìŠ}õê /`y5ëJXN–ðó‡»Õ NА+ñåäuB”‚îX?yÑ4ÓßñvÜ8(”Â;Ä?w¡ö.¥Û?Öźª]þn®s6S17çÑ}VÛ,Dr#‘GòÚ¬gƒ¦…¿ @ºO²Ï‰ôég’œPË€ÝÄÕa7NƒˆXÈ‹ Fˆ±Q¨ÚˆŸmÞ¿ì endstream endobj 8 0 obj <> endobj 9 0 obj <> stream xœ•‘»RÃ0E{ŖнlY%̐Pÿ€ˆ•AŒl1Ž3áóqüH„£-hTÜ9gWw6{©@*RH J”DS U OŒ Õàáyo]o¡ú‚×*¦rB¹Æ7ëÝO$p]. \8àÛtö¦q¡µÇÈ–‚*JÜ.cx.Ãò_e0c÷i½O•Á„[sêC² ¦2¨BQeÞt¶ ©&˜°µ­íŒoBºT!Ì»\¬dÌbì¾K¡9á]NQ•„æ (ÑCàa7rlÆ‹]Á%Y“\³éFWrIÖ¤äjºK´|JÖd~÷Íùç³(þ$p™–s”‹xÚ’Ì‹Ü&E+4]M endstream endobj xref 0 10 0000000000 65535 f 0000000015 00000 n 0000000080 00000 n 0000000126 00000 n 0000000280 00000 n 0000000309 00000 n 0000000414 00000 n 0000000487 00000 n 0000000895 00000 n 0000001002 00000 n trailer <> startxref 1396 %%EOF

y mi codigo es este:

selectFont(’../fonts/courier.afm’);
$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect(”localhost”, “root”, “a”);
mysql_select_db(”lubricentro”, $conexion);
$queEmp = “SELECT nombre_producto, marca_producto, descripcion_p, cantidad_stock FROM producto”;
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

hola ya resolvi mi problema eran mis clases solo cambie require_once(”../class/config.php”);
require_once(”../class/DB_MySQL.class.php”); //Incluimos la clase para las consultas
$miconexion = new DB_MySQL;
$miconexion->conectar($dbase, $host, $user, $password);
por esto:
$conexion = mysql_connect(”localhost”, “usuario”, “contraseña”);

mysql_select_db(”salud”, $conexion);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp))
{
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘nombre_producto’=>’nombre_producto‘,
‘marca_producto’=>’marca_producto‘,
‘descripcion_p’=>’descripcion_p‘,
‘cantidad_stock’=>’cantidad_stock
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);

$txttit = “BLOG.UNIJIMPE.NET\n”;
$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;
$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();

?>

porfa una ayudadita

sebass
08/06/2008
6:43 pm

ahora si, este es mi codigo modificado y aun me sale lo mismo, estoy son appserv, php 5.2

selectFont(’../fonts/courier.afm’);
$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect(”localhost”, “root”, “a”);
mysql_select_db(”lubricentro”, $conexion);
$queEmp = “SELECT nombre_producto, marca_producto, descripcion_p, cantidad_stock FROM producto”;
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

mysql_select_db(”salud”, $conexion);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp))
{
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘nombre_producto’=>’nombre_producto‘,
‘marca_producto’=>’marca_producto‘,
‘descripcion_p’=>’descripcion_p‘,
‘cantidad_stock’=>’cantidad_stock
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);

$txttit = “BLOG.UNIJIMPE.NET\n”;
$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;
$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();

?>

jose luis jimenez
10/06/2008
6:02 pm

mm este foro me ha servido para los archivos pdf pero como ajusto el tamaó de las columnas agradezco si alguien me ayuda
y vi algunas preguntas relacionadas con la orientacion de la pagina a mi ya me quedo y la instruccion es esta

$pdf =& new Cezpdf(’letter’,'landscape’);

si por alguna razon marca error se usa comillas simples o apostofe como lo conozcan mejor esper les funcione y alguien me ayude

genesis
13/06/2008
10:37 pm

Te cuento que tu blog es genial..
Me sirvió mucho y gracias.

deos
21/06/2008
9:41 pm

he leido aquí entre las dudas el problema de los acentos pero ni aun leyendolo lo he podido solucionar, me podrías dar alguna pista?

baldini
27/06/2008
9:40 pm

hola muy buen articulo pero si alguien pueda ayudarme para poner los logos de la empresa en los encabezados del archivo pdf generado

Sebass
01/07/2008
8:02 pm

sigo parado en lo mismo este es mi codigo y sigue saliendo el mismo problema

selectFont(’../fonts/courier.afm’);
$pdf->ezSetCmMargins(1,1,1.5,1.5);

$conexion = mysql_connect(”localhost”, “root”, “a”);
mysql_select_db(”lubricentro”, $conexion);
$queEmp = “SELECT nombre_producto, marca_producto, descripcion_p, cantidad_stock FROM producto”;
$resEmp = mysql_query($queEmp, $conexion) or die(mysql_error());
$totEmp = mysql_num_rows($resEmp);

mysql_select_db(”salud”, $conexion);

$ixx = 0;
while($datatmp = mysql_fetch_assoc($resEmp))
{
$ixx = $ixx+1;
$data[] = array_merge($datatmp, array(’num’=>$ixx));
}
$titles = array(
‘nombre_producto’=>’nombre_producto‘,
‘marca_producto’=>’marca_producto‘,
‘descripcion_p’=>’descripcion_p‘,
‘cantidad_stock’=>’cantidad_stock‘
);
$options = array(
’shadeCol’=>array(0.9,0.9,0.9),
‘xOrientation’=>’center’,
‘width’=>500
);

$txttit = “BLOG.UNIJIMPE.NET\n”;
$txttit.= “Ejemplo de PDF con PHP y MYSQL \n”;
$pdf->ezText($txttit, 12);
$pdf->ezTable($data, $titles, ”, $options);
$pdf->ezText(”\n\n\n”, 10);
$pdf->ezText(”Fecha: “.date(”d/m/Y”), 10);
$pdf->ezText(”Hora: “.date(”H:i:s”).”\n\n”, 10);
$pdf->ezStream();

?>

me sale esto:

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\lubricentro\pdfprueba.php:1) in C:\AppServ\www\lubricentro\class.pdf.php on line 1916

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\lubricentro\pdfprueba.php:1) in C:\AppServ\www\lubricentro\class.pdf.php on line 1917

Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\lubricentro\pdfprueba.php:1) in C:\AppServ\www\lubricentro\class.pdf.php on line 1919
%PDF-1.3 %âãÏÓ 1 0 obj endobj 2 0 obj endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources << /ProcSet 4 0 R /Font >> /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œ}’KSÂ0…÷üŠ»ÔÍå&Mó`ÉX h]¸bjZ”¦\øïuªun2““|’9′é ScN ŒFbÒú#Œ#Aº¸ÎnÆx¿˜^OçËIz é’´×aµ@&ä)›ìŠ}õê /`y5ëJXN–ðó‡»Õ NА+ñåäuB”‚îX?yÑ4ÓßñvÜ8(”Â;Ä?w¡ö.¥Û?Öźª]þn®s6S17çÑ}VÛ,Dr#‘GòÚ¬gƒ¦…¿ @ºO²Ï‰ôég’œPË€ÝÄÕa7NƒˆXÈ‹ Fˆ±Q¨ÚˆŸmÞ¿ì endstream endobj 8 0 obj endobj 9 0 obj stream xœ•‘»RÃ0E{ŖнlY%̐Pÿ€ˆ•AŒl1Ž3áóqüH„£-hTÜ9gWw6{©@*RH J”DS U OŒ Õàáyo]o¡ú‚×*¦rB¹Æ7ëÝO$p]. \8àÛtö¦q¡µÇÈ–‚*JÜ.cx.Ãò_e0c÷i½O•Á„[sêC² ¦2¨BQeÞt¶ ©&˜°µ­íŒoBºT!Ì»\¬dÌbì¾K¡9á]NQ•„æ (ÑCàa7rlÆ‹]Á%Y“\³éFWrIÖ¤äjºK´|JÖd~÷Íùç³(þ$p™–s”‹xÚ’Ì‹Ü&E+4]M endstream endobj xref 0 10 0000000000 65535 f 0000000015 00000 n 0000000080 00000 n 0000000126 00000 n 0000000280 00000 n 0000000309 00000 n 0000000414 00000 n 0000000487 00000 n 0000000895 00000 n 0000001002 00000 n trailer startxref 1396 %%EOF

Nelson
04/07/2008
6:49 pm

Buenas a todos los desarrolladores en PHP y Mysql:
todo salio a la perfeccion, pero ahora os quiero pedir un favor grande, si algun desarrollador me puede ayudar, sucede que manejo variables y cuando hago la consulta para mostrar en el pdf hago WHERE cidentidad = ‘$cidentidad’ y me muestra un formulario en blanco, como puedo generar consultas comparando y enviando variables desde un formulario a PDF donde hago la consulta, puesto que en el ejemplo la consulta esta en el formulario php-mysql.php, por favor si alguyien puede ayudarme se lo agradeceria…

Nelson
04/07/2008
6:50 pm

y mas aun mis agradecimientos se me enviarian a mi correo nelson_poeta1@hotmail.com

rhuerta
11/07/2008
12:42 pm

Hola a todos la herramienta funciona de excelentemente, solo que necesito poner los datos que tengo en ciertas cordenas o en cajas de texto diferentes a una tabla porque es un formato de un solo cliente (dotos de un cliente), ojala me puedan apoyar porque si me urge mucho gracias.=)

Andrea
15/07/2008
4:52 pm

hola! muchísimas gracias!!!! esta opción para generar reportes está de lujo! Dios te bendiga!!!!