Foros del Web » Programando para Internet » PHP »

Pagina nueva segun Fecha

Estas en el tema de Pagina nueva segun Fecha en el foro de PHP en Foros del Web. 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. ...
  #1 (permalink)  
Antiguo 12/12/2011, 14:37
Avatar de JuJoGuAl  
Fecha de Ingreso: julio-2009
Ubicación: Venezuela
Mensajes: 754
Antigüedad: 14 años, 8 meses
Puntos: 19
Pagina nueva segun Fecha

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
  1. <?PHP
  2. require_once('Connections/Sistema.php');
  3. if ($_SESSION['ID'] != 0 && $_SESSION['TIENDA']!="NINGUNO")
  4. {
  5.     if (isset($_GET['entrada']))
  6.     {
  7.       $entrada=escape($_GET['entrada']);
  8.     }
  9.     if (isset($_GET['salida']))
  10.     {
  11.       $salida=escape($_GET['salida']);
  12.     }
  13.     if (isset($_GET['empresa']))
  14.     {
  15.       $empresa=escape($_GET['empresa']);
  16.     }
  17.     if (isset($_GET['lugar']))
  18.     {
  19.       $lugar=escape($_GET['lugar']);
  20.     }
  21.     if (isset($_GET['op']))
  22.     {
  23.       $op=escape($_GET['op']);
  24.     }
  25.     $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";
  26.     if ( ($entrada!=NULL) )
  27.     {
  28.         $sql.=" AND DATE_FORMAT (registros.entrada1,'%d/%m/%Y') >= '$entrada'";
  29.        
  30.     }
  31.     if ( ($salida!=NULL) )
  32.     {
  33.         $sql.=" AND DATE_FORMAT (registros.entrada1,'%d/%m/%Y') <= '$salida'";
  34.        
  35.     }
  36.     if ( ($empresa!="TODOS") && ($op==1) )
  37.     {
  38.         $sql.=" AND empleados.empresa = '$empresa' ";
  39.        
  40.     }
  41.     if ( ($lugar!="TODOS") && ($op==2) )
  42.     {
  43.         $sql.=" AND registros.empresa = '$lugar' ";
  44.        
  45.     }
  46.     $sql.=" ORDER BY registros.entrada1";
  47.     mysql_select_db($database_Sistema, $Sistema);
  48.     $auditoria = mysql_query($sql, $Sistema) or die(mysql_error());
  49.     $total= mysql_num_rows($auditoria);
  50.     if ($total!=0)
  51.     {      
  52.         ini_set('max_execution_time', 300);
  53.         ini_set('memory_limit','32M');
  54.         require_once('./Scripts/pdfClassesAndFonts_009e/class.ezpdf.php');
  55.         //$pdf =& new Cezpdf('a4');
  56.         $pdf =& new Cezpdf('letter','landscape');
  57.         $pdf->selectFont('./Scripts/pdfClassesAndFonts_009e/fonts/Helvetica.afm');
  58.         $pdf->ezSetCmMargins(2,2,2,2);
  59.        
  60.         $ixx = 1;
  61.         while($row = mysql_fetch_assoc($auditoria))
  62.         {
  63.             $data[] = array_merge($row, array('num'=>$ixx));
  64.             $ixx = $ixx+1;
  65.         }
  66.         $titles = array(
  67.         'num'=>'<b>#</b>',
  68.         'cedula'=>'<b>Cedula</b>',
  69.         'nombres'=>'<b>Nombres</b>',
  70.         'entrada1'=>'<b>Entrada 1</b>',
  71.         'salida1'=>'<b>Salida 1</b>',
  72.         'entrada2'=>'<b>Entrada 2</b>',
  73.         'salida2'=>'<b>Salida 2</b>',
  74.         'lugar'=>'<b>Lugar de Registro</b>',
  75.         );
  76.         $options = array(
  77.         'shadeCol'=>array(0.9,0.9,0.9),
  78.         'xOrientation'=>'center',
  79.         'fontSize'=>'9',
  80.         'width'=>770
  81.         );
  82.         date_default_timezone_set('America/Caracas');
  83.         $hora=date("d/m/Y h:i:s A");
  84.         $txttit = "<b>Control de Entrada y Salida del Personal</b>\n";
  85.         if($empresa=="NADA")
  86.         {
  87.             $empresa="TODAS LAS NOMINAS";
  88.         }
  89.         if($empresa=="TODOS")
  90.         {
  91.             $empresa="TODAS LAS NOMINAS";
  92.         }
  93.         if ($op==1)
  94.         {
  95.             $reporte = "Reporte de la Nomina: <b>$empresa</b> Desde: <b>$entrada</b> Hasta: <b>$salida</b> Filtrado por: <b>NOMINA</b>\n";
  96.         }
  97.         else if ($op==2)
  98.         {
  99.             $reporte = "Reporte de la Nomina: <b>$empresa</b> Desde: <b>$entrada</b> Hasta: <b>$salida</b> Filtrado por: <b>LUGAR DE REGISTRO</b>\n";
  100.         }
  101.         //$reporte = "Reporte de la Nomina: <b>$empresa</b> Desde: <b>$entrada</b> Hasta: <b>$salida</b>\n";
  102.         $pdf->ezImage("./Imagenes/Banner.jpg", -40, 0, 'none', 'none');
  103.         $pdf->ezText($txttit,14,array('justification'=>'center'));
  104.         $pdf->ezText($reporte,12,array('justification'=>'left'));
  105.         //$pdf->ezNewPage();
  106.         $pdf->ezTable($data, $titles, '', $options);
  107.         $pdf->ezText("\n\n<b>Fecha y Hora de Impresion:</b> ".$hora."\n\n", 10);
  108.         ob_end_clean();
  109.         $pdf->ezStream();
  110.     }
  111.     else
  112.     {
  113.         //No Hay resultados
  114.         ?>
  115.         <table width="100%" border="0">
  116.             <tr>
  117.                 <td align="center"><img src="Imagenes/Banner.gif"></td>
  118.             </tr>
  119.             <tr>
  120.                 <td align="center"><p style="font-family:Arial, Helvetica, sans-serif; color:FF0000; font-size:18px;">
  121.                 No Hay Resultados con este Criterio de Busqueda                
  122.                 </p>
  123.                 </td>
  124.             </tr>
  125.         </table>
  126.         <?PHP
  127.     }
  128. }
  129. else
  130. {
  131.     redir('./control.php?code=001');
  132. }
  133.  
  134. ?>
  #2 (permalink)  
Antiguo 12/12/2011, 14:45
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Pagina nueva segun Fecha

programe un cronjob en el servidor que realice esa tarea cada día
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 12/12/2011, 14:51
Avatar de JuJoGuAl  
Fecha de Ingreso: julio-2009
Ubicación: Venezuela
Mensajes: 754
Antigüedad: 14 años, 8 meses
Puntos: 19
Respuesta: Pagina nueva segun Fecha

creo qno me supe explicar, cuando el sistema arroja el reporte el antes pide unas fechas de inervalo:

si la fecha es de una semana.. entonces en el reporte muestra una tabla con todos los resultados obtenidos de dicha semana, y mis jefes me estan solicitando que en el pdf se salte la pagina por fecha es decir una pagina para la fecha 01/12... otra para la fecha 02/12... y asi... de tal manera que por cada NUEVO DIA que se encuentre se cree un salto de pagina... :S entonces como quedaria eso? :S

Etiquetas: fecha, mysql, registro, sql, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:02.