Visualizzazione dei risultati da 1 a 4 su 4

Discussione: tabelle con fpdf

  1. #1

    tabelle con fpdf

    ciao ragazzi! sto utilizzando la classe fpdf x generare un pdf dinamico ho settato 5 tabelle con i relativi dati ma me le stampa ognuna in una pag diversa, vorrei che le ordinasse l'una sotto l'altra nella stessa pagina come dovrei modificare questo codice??

    Codice PHP:
    <?php
    define
    ('FPDF_FONTPATH','../font/');
    require(
    '../fpdf.php');

    class 
    PDF extends FPDF
    {

    //Page header
    function Header()
    {
        
    //Logo
        
    $this->Image('img/Logo.jpg',10,8,33);
        
    //Arial bold 15
        
    $this->SetFont('Arial','B',15);
        
    //Move to the right
        
    $this->Cell(40);
        
    //Title
        
    $this->Cell(75,16,'Title',1,0,'C');
        
    $this->Cell(75,16,'Title2',1,0,'C');
        
    //Line break
        
    $this->Ln(20);
    }


    //Load data
    function LoadData($file)
    {
        
    //Read file lines
        
    $lines=file($file);
        
    $data=array();
        foreach(
    $lines as $line)
            
    $data[]=explode(';',chop($line));
        return 
    $data;
    }



    //Simple table
    function BasicTable($header,$data)
    {
        
    //Header
        
    foreach($header as $col)
            
    $this->Cell(63,7,$col,1);
        
    $this->Ln();
        
    //Data
        
    foreach($data as $row)
        {
            foreach(
    $row as $col)
                
    $this->Cell(63,6,$col,1);
            
    $this->Ln();
        }
    }

    function 
    BasicTable2($header2,$data)
    {
        
    //Header
        
    foreach($header2 as $col)
            
    $this->Cell(63,7,$col,1);
        
    $this->Ln();
        
    //Data
        
    foreach($data as $row)
        {
            foreach(
    $row as $col)
                
    $this->Cell(63,6,$col,1);
            
    $this->Ln();
        }
    }

    function 
    BasicTable3($header3,$data)
    {
        
    //Header
        
    foreach($header3 as $col)
            
    $this->Cell(28,7,$col,1);
        
    $this->Ln();
        
    //Data
        
    foreach($data as $row)
        {
            foreach(
    $row as $col)
                
    $this->Cell(28,6,$col,1);
            
    $this->Ln();
        }
    }


    function 
    BasicTable4($header4,$data)
    {
        
    //Header
        
    foreach($header4 as $col)
            
    $this->Cell(28,7,$col,1);
        
    $this->Ln();
        
    //Data
        
    foreach($data as $row)
        {
            foreach(
    $row as $col)
                
    $this->Cell(28,6,$col,1);
            
    $this->Ln();
        }
    }

    function 
    BasicTable5($header5,$data)
    {
        
    //Header
        
    foreach($header5 as $col)
            
    $this->Cell(28,7,$col,1);
        
    $this->Ln();
        
    //Data
        
    foreach($data as $row)
        {
            foreach(
    $row as $col)
                
    $this->Cell(28,6,$col,1);
            
    $this->Ln();
        }
    }

    }
    $pdf=new PDF();
    //Column titles
    $header=array('Data Doc.','Num. doc','Pag');
    //Data loading
    $data=$pdf->LoadData('datidoc.txt');
    $pdf->SetFont('Arial','',10);
    $pdf->AddPage();
    $pdf->BasicTable($header,$data);

    //Column titles
    $header2=array('Fattura Emessa','Spett.le',);
    //Data loading
    $data=$pdf->LoadData('datidoc2.txt');
    $pdf->SetFont('Arial','',10);
    $pdf->AddPage();
    $pdf->BasicTable2($header2,$data);

    //Column titles
    $header3=array('Articolo','Descrizione','Qta','Valore','sconto','Iva','Imponibile');
    //Data loading
    $data=$pdf->LoadData('datidoc3.txt');
    $pdf->SetFont('Arial','',10);
    $pdf->AddPage();
    $pdf->BasicTable3($header3,$data);

    //Column titles
    $header4=array('IVA','Descrizione','Aliquota','Imponibile','Imposta','totale');
    //Data loading
    $data=$pdf->LoadData('datidoc4.txt');
    $pdf->SetFont('Arial','',10);
    $pdf->AddPage();
    $pdf->BasicTable4($header4,$data);

    //Column titles
    $header5=array('Imponibile','Imposta','Totale',);
    //Data loading
    $data=$pdf->LoadData('datidoc5.txt');
    $pdf->SetFont('Arial','',10);
    $pdf->AddPage();
    $pdf->BasicTable5($header5,$data);

    $pdf->Output();

    ?>

  2. #2
    Utente di HTML.it L'avatar di nep036
    Registrato dal
    Nov 2003
    Messaggi
    1,453
    Dovresti togliere l'AddPage() ad ogni blocco...

  3. #3

    testo da variabile

    grazie nep036 così funziona invece ora vorrei inserire nell'intestazione iìun testo contenuto in una variabile ma non me lo fa visualizzare: faccio così:

    Codice PHP:
    $title='prova';

    class 
    PDF extends FPDF
    {

    //Page header
    function Header()
    {
        
    //Logo
        
    $this->Image('img/Logo.jpg',10,8,33);
        
    //Arial bold 15
        
    $this->SetFont('Arial','B',15);
        
    //Move to the right
        
    $this->Cell(40);
        
    //Title
        
    $this->Cell(75,16,'-',1,0,'C');
        
    $this->Cell(75,16,$title,1,0,'C');
        
    //Line break
        
    $this->Ln(20);
    }


    perchè non me lo fa visualizzare??

  4. #4
    devi definire una variabile pubblica e ridefinirla all' interno della funzione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.