Bonjour à tous !
Je découvre ce site fort sympathique.
Je me permets de faire une requête concernant FPDF , découvert récemment (permettant d'imprimer des tableaux en php).
Je suis allé sur le site officiel (j'ai même posté un msg mais apparemment il n'est jamais apparu
)) , je me demande si le site est toujours en vie….
) .
Bref, mon tableau s'imprime bien sur plusieurs pages (titre:OK PageNo:ok, saut page:ok)) mais l'entête du tableau figure uniquement sur la 1ère page.
Je galère pas mal avec ça depuis plusieurs jours .
merci bcp d'avance.
Je découvre ce site fort sympathique.
Je me permets de faire une requête concernant FPDF , découvert récemment (permettant d'imprimer des tableaux en php).
Je suis allé sur le site officiel (j'ai même posté un msg mais apparemment il n'est jamais apparu


Bref, mon tableau s'imprime bien sur plusieurs pages (titre:OK PageNo:ok, saut page:ok)) mais l'entête du tableau figure uniquement sur la 1ère page.
Je galère pas mal avec ça depuis plusieurs jours .
merci bcp d'avance.
<?php
// Connexion à la BDD
//$bddname = 'nom_de_la_base';
//$hostname = 'localhost';
//$username = 'utilisateur';
//$password = 'mot_de_passe';
//$db = mysqli_connect ($hostname, $username, $password, $bddname);
try
{
// On se connecte ? MySQL
$bdd = new PDO('mysql:host=localhost;dbname=base1;charset=utf8','root','',array
(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch(Exception $e)
{
// En cas d'erreur on affiche un msg et on arr?te tout
die('Erreur : '.$e->getmessage());
}
// Appel de la librairie FPDF
require("fpdf/fpdf.php");
// Création de la class PDF
class PDF extends FPDF {
// Header
function Header() {
$this->SetFont('Arial','B','20');
$this->SetXY(40,20);
$this->Cell(120,10,'LISTE des DVD',1,0,'C');
// Saut de ligne
$this->Ln(10);
}
// Footer
function Footer() {
// Positionnement à 1 cm du bas
$this->SetY(-10);
$this->SetFont('Arial','I','8');
// Numero de page
$this->Cell(0,5,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}
// Activation de la classe
$pdf = new PDF('P','mm','A4');
$pdf->AddPage();
$pdf->SetFont('Helvetica','',11);
$pdf->SetTextColor(0);
$position_entete = 45;
function entete_table($position_entete){
global $pdf;
$pdf->SetDrawColor(183); // Couleur des contours
$pdf->SetFillColor(221); // Couleur de remplissage
$pdf->SetTextColor(0); // Couleur du texte
$pdf->SetY($position_entete);
$pdf->SetX(30);
$pdf->Cell(100,10,'Titre du DVD',1,0,'L',1);
$pdf->SetX(130);
$pdf->Cell(30,10,'Genre',1,0,'C',1);
$pdf->SetX(160);
$pdf->Cell(30,10,'Annee',1,0,'C',1);
$pdf->Ln(); // Retour à la ligne
}
entete_table($position_entete);
// Liste des détails
$position_detail = 70; //
$reponse = $bdd->query('SELECT * FROM DVD ORDER BY Titre');
while ($row2 = $reponse->fetch()) {
$pdf->SetY($position_detail);
$pdf->SetX(30);
$pdf->MultiCell(100,10,utf8_decode($row2['Titre']),1,'L');
$pdf->SetY($position_detail);
$pdf->SetX(130);
$pdf->MultiCell(30,10,$row2['Genre'],1,'C');
$pdf->SetY($position_detail);
$pdf->SetX(160);
$pdf->MultiCell(30,10,$row2['Annee'],1,'C');
$position_detail += 10;
}
// Nom du fichier
//$nom = 'ListeDVD'.pdf';
// Création du PDF
$pdf->Output();
?>