Foros del Web » Programando para Internet » PHP »

Crear informe pdf de varias paginas en php usando html2pdf

Estas en el tema de Crear informe pdf de varias paginas en php usando html2pdf en el foro de PHP en Foros del Web. Tengo el siguiente codigo en php que me genera una factura Código PHP: <?php include( 'conexion/conec.php' ); include( 'html2pdf/html2pdf.class.php' ); $query = pg_query ( "select a.id_emp_base_imponible,b.clave,b.empresa,c.costo_tarifa,c.nombre_tarifa as base,c.cuenta_ingreso,a.totalpagar,b.propietario from empresas_bases_imponibles a INNER JOIN inmuebles_empresas b on a.id_empresa=b.id_empresa INNER JOIN inmuebles_tarifas c on a.id_tarifa=c.id_tarifa" ...
  #1 (permalink)  
Antiguo 11/02/2015, 14:40
Avatar de binshmikertan  
Fecha de Ingreso: noviembre-2014
Mensajes: 23
Antigüedad: 10 años, 1 mes
Puntos: 0
Pregunta Crear informe pdf de varias paginas en php usando html2pdf

Tengo el siguiente codigo en php que me genera una factura
Código PHP:
<?php
include('conexion/conec.php');
include(
'html2pdf/html2pdf.class.php');
$query=pg_query("select a.id_emp_base_imponible,b.clave,b.empresa,c.costo_tarifa,c.nombre_tarifa as base,c.cuenta_ingreso,a.totalpagar,b.propietario from empresas_bases_imponibles a INNER JOIN inmuebles_empresas b on a.id_empresa=b.id_empresa INNER JOIN inmuebles_tarifas c on a.id_tarifa=c.id_tarifa");
$row=pg_fetch_array($query);
$clave=$row[1];
$empresa=$row[2];
$costotarifa=$row[3];
$nomtarifa=$row[4];
$cuentaingreso=$row[5];
$totalpagar=$row[6];
$propietario=$row[7];


$fechalimit=$_POST['fechven'];
$periodo=trim($_POST['periodo']);




    
$total=130;
$query0=pg_query("SELECT nuc,clave,zona,sector FROM parcelario WHERE clave='$clave' ");

$row0=pg_fetch_array($query0);
$zona=$row0[3];
$query1=pg_query("SELECT * FROM inmuebles_nuc WHERE nuc='$row0[0]' ");
$row1=pg_fetch_array($query1);
$propietario=$row1[1].",".$row1[2];
    
$query2=pg_query("SELECT * FROM inmuebles_direcciones WHERE clave = '$clave'");
    
$row2=pg_fetch_array($query2);
    
$direccion=$row2[7]." ".$row2[8]." ".$row2[5]." ".$row2[6]." ".$row2[9]." ".$row2[10]." #".$row2[4]." ".$row2[2]." ".$row2[3];
    
    
    
$nota=$_POST['nota'];
    
    
    
$fecha$_POST['fechemi'];
    
$fecha2=$_POST['fechemi'];
    

        
$cuen=pg_query("SELECT cuenta_corriente FROM parcelario WHERE clave='$clave'");
        
$cuencor=pg_fetch_array($cuen);
        
$cuentacorriente=$cuencor[0];
          
       
    
      
$fiestas"5% Fiestas";
      
       
       
 


$obj= new ConvertirPDF();
$obj->partida($propietario,$fecha,$direccion,$cuentacorriente,$periodo,$zona,$fiestas,$fechalimit,$nota);


 class 
ConvertirPDF
{

    public static function 
formato($propietario,$fecha,$direccion,$cuentacorriente,$periodo,$zona,$fiestas,$fechalimit,$nota)
    {
    
                
$htm="


    <div class='derecha'>
    
    <div class='fecha'>
    "
.$fecha."
    </div>
    <div class='empresa'>
        EMPRESAS
    </div>
    <div class='muni'>
    NUEVA CONCEPCION
    </div>
        <div class='depa'>
        CHALATENANGO
        
    </div>
    

    <div class='propietario'>
    "
.$propietario."
    </div>

    <div class='direccion'>
    "
.$direccion."
    </div>
    <div class='cuentacor'>
    "
.$cuentacorriente."
    </div>
    
    <div class='periodo'>
    "
.$periodo."
    </div>
    
    <div class='zona'>
    "
.$zona."
    </div>
    
    
    
        
    <div class='tarifa'>
    "
.ConvertirPDF::nombrestarifas()."
    </div>
     <div class='fiestas'>
    "
.$fiestas."
    </div>
    
    <div class='base'>
    "
.ConvertirPDF::base()."
    </div>
    
    <div class='totalfiestas'>
    "
.ConvertirPDF::totalfiestas()."
    </div>    
    
        <div class='total'>
    "
.ConvertirPDF::totalfinal()."
    </div>
    
<div class='fechafuturo'>
        "
.$fechalimit."
        </div>
        
<div class='nota'>
        "
.$nota."
        </div>
                
        
    </div>
    
<div class='izquierda'>
    
    <div class='fechaizquierda'>
    "
.$fecha."
    </div>
<div class='empresaizquierda'>
        EMPRESAS
    </div>
        <div class='muniizquierda'>
        NUEVA CONCEPCION
        </div>
    
    <div class='depaizquierda'>
    CHALATENANGO
    </div>
        
    
    <div class='propietarioizquierda'>
    "
.$propietario."
    </div>
    
    
    <div class='cuentacorizquierda'>
    "
.$cuentacorriente."
    </div>
    <div class='periodoizquierdo'>
    "
.$periodo."
    </div>    
    
    <div class='direccionizquierda'>
    "
.$direccion."
    </div>
    
    <div class='zonaizquierda'>
    "
.$zona."
    </div>
    
    <div class='tarifaizquierda'>
    "
.ConvertirPDF::nombrestarifas()."
    </div>
         <div class='fiestasizquierda'>
    "
.$fiestas."
    </div>
    
    <div class='baseizquierda'>
    "
.ConvertirPDF::base()."
    </div>
    <div class='totalfiestasizqui'>
    "
.ConvertirPDF::totalfiestas()."
    </div>
    
    <div class='totalizquierda'>
    "
.ConvertirPDF::totalfinal()."
    </div>
<div class='fechafuturoizquierda'>
        "
.$fechalimit."
        </div>
        
        <div class='notaizquierda'>
        "
.$nota."
        </div>
        
    </div>"
;
    
    

return 
$htm;
    }
    
#######################################################
    
    
public static function nombrestarifas()
    {
        include(
'conexion/conec.php');
        
$query0=pg_query("select a.id_base_imponible,a.clave,a.total,b.id_tarifa,b.cuenta_ingreso,b.nombre_tarifa,b.costo_tarifa,a.totalpagar from inmuebles_bases_imponibles a inner join inmuebles_tarifas b on a.id_tarifa=b.id_tarifa WHERE a.clave='U011'");
      
      while(
$fill0=pg_fetch_array($query0)) {
          
$nm .= $fill0[5].'<br>';
          
      }
      return 
$nm;
    }
    
    public static function 
base()
    {
        include(
'conexion/conec.php');
        
$query0=pg_query("select a.id_emp_base_imponible,b.clave,b.empresa,c.costo_tarifa,c.nombre_tarifa as base,c.cuenta_ingreso,a.totalpagar,b.propietario from empresas_bases_imponibles a INNER JOIN inmuebles_empresas b on a.id_empresa=b.id_empresa INNER JOIN inmuebles_tarifas c on a.id_tarifa=c.id_tarifa");
      
      while(
$fill0=pg_fetch_array($query0)) {
          
$nm .= $fill0[6].'<br>';
          
      }
      return 
$nm;
      
     
    }
    
    public static function 
fiestaporce()
    {
        include(
'conexion/conec.php');
        
$query0=pg_query("select sum (a.totalpagar) from empresas_bases_imponibles a INNER JOIN inmuebles_empresas b on a.id_empresa=b.id_empresa INNER JOIN inmuebles_tarifas c on a.id_tarifa=c.id_tarifa");
      
     while(
$fill0=pg_fetch_array($query0)) {
          
$nm .= $fill0[0].'<br>';    
          
$nm1 .= $fill0[0]*0.05.'<br>';
          
$nm2.=( $nm $nm1).'<br>';
          
      }
      return 
$nm2;
      
}        
    
    
    
public static function 
totalfinal() 
{
    
        include(
'conexion/conec.php');
        
$query0=pg_query("select sum (a.totalpagar) from empresas_bases_imponibles a INNER JOIN inmuebles_empresas b on a.id_empresa=b.id_empresa INNER JOIN inmuebles_tarifas c on a.id_tarifa=c.id_tarifa");
      
     while(
$fill0=pg_fetch_array($query0)) {
          
$nm .= $fill0[0].'<br>';    
          
$nm1 .= $fill0[0]*0.05.'<br>';
          
$nm2.=( $nm $nm1).'<br>';
          
      }
      return 
$nm2;
      
}        
        public static function 
totalfiestas() 
{
    
        include(
'conexion/conec.php');
        
$query0=pg_query("select sum (a.totalpagar) from empresas_bases_imponibles a INNER JOIN inmuebles_empresas b on a.id_empresa=b.id_empresa INNER JOIN inmuebles_tarifas c on a.id_tarifa=c.id_tarifa");
      
     while(
$fill0=pg_fetch_array($query0)) {
          
$nm .= $fill0[0].'<br>';    
          
$nm1 .= $fill0[0]*0.05.'<br>';
   
      }
      return 
$nm1;
      
}        
     public static function 
tarifa()
    {
        include(
'conexion/conec.php');
        
$query0=pg_query("select a.id_emp_base_imponible,b.clave,b.empresa,c.costo_tarifa,c.nombre_tarifa as base,c.cuenta_ingreso,a.totalpagar,b.propietario from empresas_bases_imponibles a INNER JOIN inmuebles_empresas b on a.id_empresa=b.id_empresa INNER JOIN inmuebles_tarifas c on a.id_tarifa=c.id_tarifa");
      
      while(
$fill0=pg_fetch_array($query0)) {
          
$nm .= $fill0[3].'<br>';
          
      }
      return 
$nm;
    }
    public static function 
meses($num)
    {
        
$mes=array('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre');
return 
$mes[$num-1];
    }
    
############################################################
            
            
public static function footer_reporte(){
//Al igual que el formato tenemos un footer (pie de página) que puede estar por defecto en un reporte
//de igual mandera lo podemos hacer dinamicamente consultando con la base de datos
$footer='

'
;
return 
$footer;
}


public static function 
partida($propietario,$fecha,$direccion,$cuentacorriente,$periodo,$zona,$fiestas,$fechalimit,$nota)
{
    
    
ob_start();
    echo
'
    <page backbottom="100mm">
<!doctype html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="css/tiraje.css" media="all">

</head>
<body>'
.ConvertirPDF::formato($propietario,$fecha,$direccion,$cuentacorriente,$periodo,$zona,$fiestas,$fechalimit,$nota).'<page_footer>'.ConvertirPDF::footer_reporte().'</page_footer>
</body>
</html>
</page>
'
;
require_once(
'html2pdf/html2pdf.class.php');

$pdf= new HTML2PDF('L','A3','es');
$pdf->writeHTML(ob_get_clean());
$pdf->Output('prueba.pdf',$propietario,$fecha);


}


}






?>
el problema es que quiero hacer una consulta para generar multiples hojas pdf y solo me sale una pagina ideas tengo de hacer la consulta dentro de este bloque php en el function formato
Código PHP:

public static function formato($propietario,$fecha,$direccion,$cuentacorriente,$periodo,$zona,$fiestas,$fechalimit,$nota)
    {

es ahi se crea todo el cuerpo de la factura y incluir un while pero si tienen otra forma de decirme seguido de un ejemplo se los agradeceria muchisimo feliz dia

Última edición por binshmikertan; 11/02/2015 a las 14:45 Razón: agregar informacion

Etiquetas: html2pdf, reporte
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 02:01.