Générer un php sur deux colonnes avec une base de données
Posté : 18 mai 2008, 11:12
Salut,
J'utilise la classe fpdf pour créer un document PDF à partir d'une base de données.
Je veux faire un tableau de ce type :

Il est classé par ordre d'entreprise et vous voyez que actuellement, j'affiche en horizontale, sauf que ca n'est pas pratique pour la lecture.
Je voudrais faire une colonne classée en ordre alphabétique, et une fois arrivé en bas de page, je passe à la deuxième colonne toujours classé par ordre alphabétique et puis passage à la deuxième page pour faire la même chose.
Seulement la création du pdf ce fait horizontalement, je ne peux pas remonter en haut de page pour continuer à afficher d'autres éléments alors que je suis arrivé en bas de page.
Voyez vous un moyen de régler ce problème et j'éspère que je suis clair dans mon explication.
Merci d'avance.
Actuellement mon code est le suivant ( attention c'est en cours et brut pour le moment )
J'utilise la classe fpdf pour créer un document PDF à partir d'une base de données.
Je veux faire un tableau de ce type :

Il est classé par ordre d'entreprise et vous voyez que actuellement, j'affiche en horizontale, sauf que ca n'est pas pratique pour la lecture.
Je voudrais faire une colonne classée en ordre alphabétique, et une fois arrivé en bas de page, je passe à la deuxième colonne toujours classé par ordre alphabétique et puis passage à la deuxième page pour faire la même chose.
Seulement la création du pdf ce fait horizontalement, je ne peux pas remonter en haut de page pour continuer à afficher d'autres éléments alors que je suis arrivé en bas de page.
Voyez vous un moyen de régler ce problème et j'éspère que je suis clair dans mon explication.
Merci d'avance.
Actuellement mon code est le suivant ( attention c'est en cours et brut pour le moment )
Code : Tout sélectionner
<?
require('./pdflib/fpdf.php');
class PDF extends FPDF
{
//En-tête
function Header()
{
//Police Arial gras 15
$this->SetFont('Arial','B',8);
//Décalage à droite
$this->Cell(26);
$datedujour=date("d-m-Y");
//Titre
$this->Cell(30,6,'Annuaire entreprise - Le : '.$datedujour,0,0,'C');
//Saut de ligne
$this->Ln(10);
}
//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-15);
//Police Arial italique 8
$this->SetFont('Arial','I',8);
//Numéro de page
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}
$pdf=new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
include_once('connexion.php');
$query="SELECT * FROM entreprises ORDER BY entreprise";
$result=mysql_query($query);
$pdf->SetFont('Arial','B',6);
echo $pdf->Cell(6,3,'N°',1);
echo $pdf->Cell(44,3,'Entreprise',1);
echo $pdf->Cell(14,3,'Tél',1);
echo $pdf->Cell(14,3,'Fax',1);
echo $pdf->Cell(14,3,'Portable',1);
echo $pdf->Cell(8,3,'',0);
$pdf->SetFont('Arial','B',6);
echo $pdf->Cell(6,3,'N°',1);
echo $pdf->Cell(44,3,'Entreprise',1);
echo $pdf->Cell(14,3,'Tél',1);
echo $pdf->Cell(14,3,'Fax',1);
echo $pdf->Cell(14,3,'Portable',1);
echo $pdf->Ln();
while($row=mysql_fetch_array($result))
{
$pdf->SetFont('Arial','B',6);
echo $pdf->Cell(6,3,$row['telesnault'],1);
echo $pdf->Cell(44,3,$row['entreprise'],1);
echo $pdf->Cell(14,3,$row['tel'],1);
echo $pdf->Cell(14,3,$row['Fax'],1);
echo $pdf->Cell(14,3,$row['portable'],1);
echo $pdf->Cell(8,3,'',0);
$row=mysql_fetch_array($result);
echo $pdf->Cell(6,3,$row['telesnault'],1);
echo $pdf->Cell(44,3,$row['entreprise'],1);
echo $pdf->Cell(14,3,$row['tel'],1);
echo $pdf->Cell(14,3,$row['Fax'],1);
echo $pdf->Cell(14,3,$row['portable'],1);
echo $pdf->Ln();
}
mysql_close();
$pdf->Output();
?>