Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/08/2013, 11:37
Avatar de itssarayall
itssarayall
 
Fecha de Ingreso: julio-2013
Mensajes: 1
Antigüedad: 10 años, 9 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