Buenas estoy haciendo reportes PDF con EZPDF, ahora estoy haciendo un sistema de asistencia donde muestro la hora en q un pesona entra y sale. dividiendo las filas por fecha, es decir por cada dia el usuario genera 2 registros (2 entradas y 2 salidas) eso va bien en el pdf se me muestra un renglon por dia...
ahora cuando mando a hacer el reporte yo pregunto el intervalo de la fecha y hay ocasiones donde se me pide que sea (01/12/2011 hasta 12/12/2011) entonces me sale en una hora todos los empleados en esa fecha, y me gustaria que cada vez que el dia cambiara me creara una hoja nueva... como hago eso? muestro el codigo de lo que llevo.
Código PHP:
Ver original<?PHP
require_once('Connections/Sistema.php');
if ($_SESSION['ID'] != 0 && $_SESSION['TIENDA']!="NINGUNO")
{
if (isset($_GET['entrada'])) {
$entrada=escape($_GET['entrada']);
}
if (isset($_GET['salida'])) {
$salida=escape($_GET['salida']);
}
if (isset($_GET['empresa'])) {
$empresa=escape($_GET['empresa']);
}
if (isset($_GET['lugar'])) {
$lugar=escape($_GET['lugar']);
}
{
$op=escape($_GET['op']);
}
$sql = "SELECT registros.cedula,empleados.nombres,DATE_FORMAT(registros.entrada1,'%d/%m/%Y, %r') as entrada1,DATE_FORMAT(registros.salida1,'%d/%m/%Y, %r') as salida1,DATE_FORMAT(registros.entrada2,'%d/%m/%Y, %r') as entrada2,DATE_FORMAT(registros.salida2,'%d/%m/%Y, %r') as salida2,empleados.empresa as nomina,registros.empresa as lugar FROM registros INNER JOIN empleados ON registros.cedula=empleados.cedula WHERE registros.cedula>0";
if ( ($entrada!=NULL) )
{
$sql.=" AND DATE_FORMAT (registros.entrada1,'%d/%m/%Y') >= '$entrada'";
}
if ( ($salida!=NULL) )
{
$sql.=" AND DATE_FORMAT (registros.entrada1,'%d/%m/%Y') <= '$salida'";
}
if ( ($empresa!="TODOS") && ($op==1) )
{
$sql.=" AND empleados.empresa = '$empresa' ";
}
if ( ($lugar!="TODOS") && ($op==2) )
{
$sql.=" AND registros.empresa = '$lugar' ";
}
$sql.=" ORDER BY registros.entrada1";
if ($total!=0)
{
ini_set('max_execution_time', 300); require_once('./Scripts/pdfClassesAndFonts_009e/class.ezpdf.php');
//$pdf =& new Cezpdf('a4');
$pdf =& new Cezpdf('letter','landscape');
$pdf->selectFont('./Scripts/pdfClassesAndFonts_009e/fonts/Helvetica.afm');
$pdf->ezSetCmMargins(2,2,2,2);
$ixx = 1;
{
$ixx = $ixx+1;
}
'num'=>'<b>#</b>',
'cedula'=>'<b>Cedula</b>',
'nombres'=>'<b>Nombres</b>',
'entrada1'=>'<b>Entrada 1</b>',
'salida1'=>'<b>Salida 1</b>',
'entrada2'=>'<b>Entrada 2</b>',
'salida2'=>'<b>Salida 2</b>',
'lugar'=>'<b>Lugar de Registro</b>',
);
'shadeCol'=>array(0.9,0.9,0.9), 'xOrientation'=>'center',
'fontSize'=>'9',
'width'=>770
);
$hora=date("d/m/Y h:i:s A"); $txttit = "<b>Control de Entrada y Salida del Personal</b>\n";
if($empresa=="NADA")
{
$empresa="TODAS LAS NOMINAS";
}
if($empresa=="TODOS")
{
$empresa="TODAS LAS NOMINAS";
}
if ($op==1)
{
$reporte = "Reporte de la Nomina: <b>$empresa</b> Desde: <b>$entrada</b> Hasta: <b>$salida</b> Filtrado por: <b>NOMINA</b>\n";
}
else if ($op==2)
{
$reporte = "Reporte de la Nomina: <b>$empresa</b> Desde: <b>$entrada</b> Hasta: <b>$salida</b> Filtrado por: <b>LUGAR DE REGISTRO</b>\n";
}
//$reporte = "Reporte de la Nomina: <b>$empresa</b> Desde: <b>$entrada</b> Hasta: <b>$salida</b>\n";
$pdf->ezImage("./Imagenes/Banner.jpg", -40, 0, 'none', 'none');
$pdf->ezText($txttit,14,array('justification'=>'center')); $pdf->ezText($reporte,12,array('justification'=>'left')); //$pdf->ezNewPage();
$pdf->ezTable($data, $titles, '', $options);
$pdf->ezText("\n\n<b>Fecha y Hora de Impresion:</b> ".$hora."\n\n", 10);
$pdf->ezStream();
}
else
{
//No Hay resultados
?>
<table width="100%" border="0">
<tr>
<td align="center"><img src="Imagenes/Banner.gif"></td>
</tr>
<tr>
<td align="center"><p style="font-family:Arial, Helvetica, sans-serif; color:FF0000; font-size:18px;">
No Hay Resultados con este Criterio de Busqueda
</p>
</td>
</tr>
</table>
<?PHP
}
}
else
{
redir('./control.php?code=001');
}
?>