Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/08/2013, 11:37
Avatar de itssarayall
itssarayall
 
Fecha de Ingreso: julio-2013
Mensajes: 1
Antigüedad: 13 años, 3 meses
Puntos: 0
Exclamación Problemas al mostrar un pdf con html2pdf

hola, este es mi primer post, miren, tengo un mega problema, quiero hacer un reporte que me muestre unos registros, pero mis tablas salen horribles, salen montadas una de la otra, y me salen como 12 páginas cuando no se lleva más de esa cantidad despiadada de páginas, les pondré mi código para que vean, me urge terminar esto


Código PHP:
<?php
require_once('html2fpdf.php'); 
ob_start ();


    include (
"variable.php");
        
$link = mysql_connect(HOSTNAME,USER,PASS);
    if (!
$link)
        {
        die(
'ERROR DE CONEXION CON MYSQL: ' . mysql_error());
        }

    
$database = mysql_select_db("controlflotillas",$link);

    if (!
$database)
        {
            die(
'ERROR CONEXION CON BD: '.mysql_error());
        }
    
    
    
$fecha1='2013/06/24';
    
$fecha2='2013/06/30';
            
echo  
"<h4>Consulta solicitada entre las siguientes fechas: $fecha1 y $fecha2</h4> <br/>";        
                
    
$sql = mysql_query("select idoperador, idregistro,fecha, YEAR(fecha) as anio, MONTH(fecha) as mes, DAYname(fecha) as                                         dia, concat(uno.nombre,' ',apaterno,' ',amaterno) as noperador,  
                        economico,caja,concat(dos.nombre) as remolque,
                        comentario1,comentario2, kmsrecorridos,gananciaobtenida
                        from operador as uno
                        inner join  
                        registros on uno.idoperador=registros.operador  
                        inner join categoria as dos on dos.idcategoria=registros.tiporemolque
                        where fecha between '$fecha1' and '$fecha2' order by noperador, fecha asc"
, $link)
                        or die(
mysql_error()); 
            
$x=0;

        if(empty(
$sql))
        {
            echo
"No se encontraron registros en el intervalo de fechas que solicitó.";
        }
        
        else if(!empty(
$sql))
        {
                
$query[1]='Monday';
                
$query[2]='Tuesday';            
                
$query[3]='Wednesday';
                
$query[4]='Thursday';
                
$query[5]='Friday';
                
$query[6]='Saturday';
                
$query[7]='Sunday';
echo 
"<html><body><table>

                        <tr>
                        <td>Carro</td>
                        <td></td>
                        <td></td>
                        <td></td>                                                                        
                        <td>Semana</td>
                        <td></td>
                        <td></td>
                        <td></td>                        
                        <td>Total</td>
                        </tr>"
;

        
$i=0;
        
$nope = '-';
        
$registrosXOperador = 0;
        
$contadorRegistrosXOperador = 0;
        
$datosOperador = array();
        while (
$row = mysql_fetch_array($sql))
        {    
                    if(
$contadorRegistrosXOperador==0)
                    {
                    
                    
$consulta = "select idoperador, count(*) as total from operador inner join registros on operador.idoperador=registros.operador where concat(operador.nombre,' ',apaterno,' ',amaterno) = 
                    '"
.$row['noperador']."' and fecha between '$fecha1' and '$fecha2'";
                    
$resultado = mysql_query($consulta, $link) or die(mysql_error());
                    
$cantidad = mysql_fetch_array($resultado);
                    
$registrosXOperador = $cantidad['total'];
                    
                     echo 
"<tr>
                     <td><input type='text' value='"
.$row['caja']."'readonly/>
                        <input type='text' value='"
.$row['noperador']."'readonly/></td>";
                    }
                    
            
array_push($datosOperador,$row['dia']."&".$row['comentario1']."&".$row['comentario2']."&".$row['kmsrecorridos']."&".$row['gananciaobtenida']."&".$row['idoperador']);    
                
                        
$contadorRegistrosXOperador++;
                        if(
$contadorRegistrosXOperador == $registrosXOperador)
                        {
                            for(
$y=1; $y<8; $y++)
                            {
                                for(
$x=0; $x<$registrosXOperador; $x++)
                                {

                                        
$varExplode = explode('&',$datosOperador[$x]);
                                        
                                        if(
$varExplode[0]==$query[$y])
                                        {    
                                        
                                        
$var1 = explode('&',$datosOperador[$x]);

                                        echo 
"<td>                        
                                         <input type='text' id='id_der' value='"
.number_format($var1[3],2)."'readonly/>
                                        <input type='text' id='id_der' value='"
.number_format($var1[4],2)."'readonly/>                                    
                                            </td>"
;
                                        
goto eti;
                                        }
                                }
                            echo 
"<td></td>";

                            
eti:
                            }
                            

                    
$cuenta = mysql_query("select operador, fecha, sum(gananciaobtenida) as ganancia, 
                                           sum(kmsrecorridos) as kms from registros where fecha between 
                                           '$fecha1' and '$fecha2' and operador="
.$row['idoperador'], $link)
                                           or die(
mysql_error());             
                                
                            
                    while (
$row1 = mysql_fetch_array($cuenta))
                    {
                     
$ganancia1=$row1['ganancia'];
                     
$kms1=$row1['kms'];
                     if(
$ganancia1==0.00 && $kms1==0.00)
                     {
                      
$totalsemana=0.0;
                     }
                     else
                     {
                     
$totalsemana=$ganancia1/$kms1;    
                     
$totalsemana=number_format($totalsemana,2);
                     }                    
                     echo             
                     
"<td>     
                      <input type='text' value='$totalsemana'/>    
                      <input type='text' value='"
.number_format($row1['kms'],2)."'/>
                      <input type='text' value='"
.number_format($row1['ganancia'],2)."'/>
                      </td>"
;
                    }                            
                            
                            echo
"</tr>";
                            
$contadorRegistrosXOperador = 0;
                            
$datosOperador = array();
                        }
                        
                        
                        
$i++; 
                        
    
        }  
        echo 
"</table><body></html>";
      }


$html=ob_get_contents(); 
// delete Output-Buffer 
ob_end_clean(); 
$pdf = new HTML2FPDF('L'); 
//$pdf->DisplayPreferences('HideWindowUI'); 
$pdf -> SetDisplayMode('fullpage'); 
$pdf->AddPage(); 
$pdf->UseCSS($opt==true); 
$pdf->WriteHTML($html); 
$pdf->ReadCSS($html); 
$pdf->Output('doc.pdf','D'); 

?>

acá la imagen de cómo me esta quedando :l