Hola a todo el mundo....
Les comento lo siguiente, estoy tratando de generar un informe en formato PDF a través de la clase mencionada y comentada en este mismo foro (
http://www.ros.co.nz/pdf) he hecho el siguiente ejemplo que ha funcionado bastante bien:
Código PHP:
<?php
include ('class.ezpdf.php');
$pdf =& new Cezpdf();
$pdf->selectFont('./fonts/Times-Roman.afm');
$pdf->ezText('',30);
$pdf->addText(250,800,13,"Titulo del documento",0,0);
$data = array();
for($i=1;$i<6;$i++)
{
$data[] = array('num'=>$i,'tex1'=>'Texto columna 2 - ' . $i, 'tex2'=>'Texto columna 3 - ' . $i);
}
$cols = array('num'=>"Columna uno",'tex1'=>'Columna dos','tex2'=>'Columna tres (3)');
$pdf->ezTable($data,$cols,'',array('xPos'=>90,'xOrientation'=>'right','width'=>300,
'cols'=>array('num'=>array('justification'=>'center'),'tex1'=>array('width'=>100))));
$pdf->ezStream();
?>
Sin embargo, al tratar de generar en forma dinámica la tabla obteniendo datos de mi base y usando el mismo esquema
ocupado en el ejemplo anterior,
se me queda pegado y se
cancela por el timeout de apache (30 seg). Probé cambiando el parámetro set_time_limit(120) pero es igual, y si lo dejo en 0, el
apache termina por consumirme toda la memoria.
Estoy usando el siguiente código:
Código PHP:
$data = array();
$result = sql_query("select campo1, campo2, campo3 from tabla1", $dbi);
while(list($c1, $c2, $c3) = sql_fetch_row($result, $dbi))
{
$data[] = array('campo1' => $c1, 'campo2' => $c2, 'campo3' => $c3);
}
$cols = array('campo1'=>"Campo No1",'campo2'=>'Campo No2','campo3'=>'Campo No3');
$pdf->ezTable($data,$cols,'',array('xPos'=>90,'xOrientation'=>'right','width'=>300,
'cols'=>array('num'=>array('justification'=>'center'),'name'=>array('width'=>100))));
$pdf->ezStream();
También he tratado de usar el modo de depuración (opcion ?d=1)
para ver hasta dónde se genera el PDF pero no muestra ninguna
información.
Por Favor si a alguien le ha tocado pasar por algo similar y salido
del paso de alguna forma, me vendría bien al menos un
comentario o quizá una pista. Yo ya no tengo ninguna.
Gracias de antemano por su atención en este tema y por su
valiosa ayuda.
Alemarch.