PHP MySQL PDF

SleepyAshes Messages postés 34 Statut Membre -  
SleepyAshes Messages postés 34 Statut Membre -
Bonjour à vous!

Aujourd'hui je me tourne vers vous afin d'obtenir votre aide.

Voilà, j'ai une bdd contenant plusieurs tables.
Un script PHP qui me permet d'ouvrir une nouvelle page qui convertira mes données de ma BDD en PDF.

Tout marche parfaitement (après des heures de recherches et de travail, je suis un débutant).

Mon soucis est la mise en forme. J'aimerais savoir comment créer un tableau qui permettra de ranger mes informations.

Lors d'un clique sur une autre page, je récupère l'id dans l'URL avec la méthode GET.

Voici mon code de ma page Facturepdf.php ci dessous :


<?php

$maBase=new PDO('mysql:host=localhost; dbname=finelio; charset=utf8','root', '');

// Appel de la librairie FPDF
require("fpdf.php");

// Création de la class PDF
class PDF extends FPDF
{
// Header
function Header()
{
// Logo
$this->Image('Finelio.jpg',8,2);

}

}

// Activation de la classe
$pdf = new PDF('P','mm','A4');
$pdf->AddPage();
$pdf->SetFont('Helvetica','',11);

$pdf->SetTextColor(0);


// Infos de l'entreprise à gauche
$pdf->Text(10,70,'Nom Expediteur ');
$pdf->Text(10,75,'Adresse');
$pdf->Text(10,80,'Code Postale');
$pdf->Text(10,85,'Telephone');

$date = date("d-m-Y");
$pdf->Text(125,10,'Le');
$pdf->Text(130,10, $date);


$donneeclient=$maBase->query("SELECT * FROM `clients` Where id='".$_GET['id']."' ");

//Infos du client à droite
while ($TableauDeDonnee=$donneeclient->fetch())
{
$pdf->Text(120,95,$TableauDeDonnee['Raison Social']);
$pdf->Text(137,95,$TableauDeDonnee['Name']);
$pdf->Text(150,95,$TableauDeDonnee['Prenom']);
$pdf->Text(120,100,$TableauDeDonnee['Adresse']);
$pdf->Text(120,105,$TableauDeDonnee['CP']);
$pdf->Text(132,105,$TableauDeDonnee['Ville']);
}

$donneefacture=$maBase->query("SELECT * FROM `facture` Where id=".$_GET['id']."");

while ($TableauDeDonnee=$donneefacture->fetch())
{
$euro=chr(128);
$pdf->Text(10,150,"Reference :");
$pdf->Text(32,150,$TableauDeDonnee['Reference']);
$pdf->Text(10,155,"Date :");
$pdf->Text(32,155,$TableauDeDonnee['Date']);
$pdf->Text(10,160,"Chantier :");
$pdf->Text(32,160,$TableauDeDonnee['Chantier']);
$pdf->Text(10,165,"Honoraire :");
$pdf->Text(32,165,$TableauDeDonnee['Honoraire']);
$pdf->Text(50,165,$euro);
$pdf->Text(10,170,"Montant :");
$pdf->Text(32,170,$TableauDeDonnee['Montant']);
$pdf->Text(50,170, $euro);
$total=$TableauDeDonnee['Honoraire']+$TableauDeDonnee['Montant'];
$pdf->Text(10,175,"Total :");
$pdf->Text(32,175,$total);
$pdf->Text(50,175,$euro);

}
$pdf->Output();
?>



Merci d'avance :)
A voir également:

2 réponses

yg_be Messages postés 24281 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 585
 
bonjour,
dois-tu réellement produire un fichier pdf?
si oui, moi je ferais ainsi:
- je produirais en php un fichier html
- j’appellerais en php un outil créant un fichier pdf à partir du fichier html

http://www.finalclap.com/faq/86-php-convertir-html-pdf-generer
0
SleepyAshes Messages postés 34 Statut Membre
 
Bonjour et merci d'avoir pris le temps de répondre.

Malheureusement oui, le PDF est obligatoire.
N'est il pas plus rapide de faire des cellules dans un tableau maintenant que j'ai fais le plus gros du travail?

Merci d'avance :)
0
yg_be Messages postés 24281 Date d'inscription   Statut Contributeur Dernière intervention   1 585 > SleepyAshes Messages postés 34 Statut Membre
 
je suggère de poser la question dans le forum http://www.fpdf.org/
0
SleepyAshes Messages postés 34 Statut Membre
 
Merci pour le conseil !
0
jordane45 Messages postés 40050 Date d'inscription   Statut Modérateur Dernière intervention   4 758
 
Bonjour,

Il semble qu'il existe bien une méthode pour créer des tableaux avec la librairie FPDF.
Regarde ce tuto :
https://jc-cornic.developpez.com/tutoriels/php/pdf/index.php?page=page_3#LIII-B

Sinon.. au lieu de FPDF, tu peux utiliser la librairie html2pdf => https://html2pdf.fr/
En gros ... tu génères les données façon html ... puis tu convertit ces données en PDF.

0
SleepyAshes Messages postés 34 Statut Membre
 
Bonsoir et merci de t'intéresser à mon problème.

J'ai déjà suvi ce tuto mais je n'y arrive pas vraiment :/

On m'avait recommandé FPDF au lieu de HTML2PDF alors je pense rester dessus mais merci :)
0