Transformation d'un formulaire HTML en PDF [Résolu/Fermé]

Signaler
Messages postés
8
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
19 juin 2005
-
Messages postés
8
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
19 juin 2005
-
Bonjour à tous,

Bon voilà j'ai un problème :
je voudrais éditer un PDF avec des champs qu'un utilisateur rempli sur un formualire HTML. Pour cela j'utilise FPDF mais voilà rien ne se passe....

Voiçi mes codes :
le php qui génère le PDF :

<?php
require('fpdf.php');

class PDF extends FPDF
{
//En-tête
function Header()
{
//Logo
$this->Image('web_45.jpg',10,8,33);
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(80);
//Titre
$this->Cell(30,10,"$nom",1,0,'C');
//Saut de ligne
$this->Ln(20);

}

//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');
}
}

//Instanciation de la classe dérivée
$nom = $_POST["nom"];
$pdf=new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
for($i=1;$i<=40;$i++)
$pdf->Cell(50,10,'Impression de la ligne numéro '.$i,0,1);
$pdf->Output();
?>


et mon html :


<html>

<head>

</head>
<body>

<form ACTION="pdf.php" METHOD="post">
essai <input type="text" name="nom">
<input type="submit" value="pdf">
</form>
</body>

</html>

La variable que l'on rentre est le nom... mais rien ne se passe. Le pdf s'ouvre correctement mais sans que la variable NOM soit changé..

Merci d'avance pour votre aide.

Tophe

9 réponses

Messages postés
186
Date d'inscription
dimanche 6 juin 2004
Statut
Membre
Dernière intervention
22 septembre 2012
33
Re,

essaye:

//En-tête 
function Header() 
{ 
//Logo 
$this->Image('../Images/valide.jpg',10,8,33);
//Police Arial gras 15 
$this->SetFont('Arial','B',15); 
//Décalage à droite 
$this->Cell(80); 
//Titre 
$this->Cell(30,10, $_POST["nom"],1,0,'C');
//Saut de ligne 
$this->Ln(20); 

} 


parceque la variable $nom est défini plus loing
7
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60769 internautes nous ont dit merci ce mois-ci

Messages postés
8
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
19 juin 2005
5
Salut BARBOGE,

Bon je viens d'essayer les modifications du code et cela marche, c'est nickel. Un grand merci à toi pour ton aide.

Merci encore et a+ et à charge de revenche....

Tophe
Messages postés
186
Date d'inscription
dimanche 6 juin 2004
Statut
Membre
Dernière intervention
22 septembre 2012
33
Ton fichier fpdf.php
est il bien dans le même répertoire que ton fichier PHP
Messages postés
8
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
19 juin 2005
5
Re Barboge,

Bon j'ai essayé avec ton code PHP et le même formulaire html.
Le résultat : rien c-à-d :

- le pdf s'ouvre
- l'image a changé
MAIS
- la case titre est vide, il n'y a rien dedans

Si tu as une idée, je suis preneur.

As-tu essayé avec mon code HTML ci-dessus ?
je te le remets en dessous :

<html>

<head>

</head>
<body>

<form ACTION="pdf.php" METHOD="post">


essai <input type="text" name="nom">

<input type="submit" value="pdf">


</form>


</body>
</html>

Merci pour ton aide
A+
tophe
Messages postés
8
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
19 juin 2005
5
Salut BARBOGE,

Oui tout les fichier fpdf sont dans le même répertoire.
Le PDF se crée sans qu'il se modifie avec les données rentrées dans le html.

Si tu as une idée elle est la bienvenue.

Merci et a+
Messages postés
186
Date d'inscription
dimanche 6 juin 2004
Statut
Membre
Dernière intervention
22 septembre 2012
33
<?php 
define('FPDF_FONTPATH','../fpdf151/font/');
require('../fpdf151/fpdf.php');
class PDF extends FPDF 
{ 
//En-tête 
function Header() 
{ 
//Logo 
$this->Image('../Images/valide.jpg',10,8,33);
//Police Arial gras 15 
$this->SetFont('Arial','B',15); 
//Décalage à droite 
$this->Cell(80); 
//Titre 
$this->Cell(30,10,"$nom",1,0,'C'); 
//Saut de ligne 
$this->Ln(20); 

} 

//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'); 
} 
} 

//Instanciation de la classe dérivée 
$nom = $_POST["nom"]; 
$pdf=new PDF('P','mm','A4'); 
$pdf->Open();$pdf->AliasNbPages(); 
$pdf->AddPage(); 
$pdf->SetFont('Times','',12); 
for($i=1;$i<=40;$i++) 
$pdf->Cell(50,10,'Impression de la ligne numéro '.$i,0,1); 
$pdf->Output(); 
?> 


AVEC SE CODE CELA FONCTIONNE CHEZ MOI....
Messages postés
8
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
19 juin 2005
5
Je te remercie,

je vais l'assayé et je te tiens au courant

A+
Tophe
Messages postés
186
Date d'inscription
dimanche 6 juin 2004
Statut
Membre
Dernière intervention
22 septembre 2012
33
Excuse moi pour le délais, mais j'étais en déplacement

as tu fais les modif en gras que j'avais fait sur ton code du fichier php qui génère le PDF ?
Messages postés
8
Date d'inscription
mercredi 8 juin 2005
Statut
Membre
Dernière intervention
19 juin 2005
5
Salut Baborge,

Je n'ai pas fait les modifs que tu avais mises en gras, j'ai repris tout le code source que tu as mis, d'où ma réponse après ton post...
(réponse n°5)

J'en suis toujours au même point...donc si tu as une idée, elle est la bienvenue.

Je fais ces test sur un compte FREE. Est-ce que ca peut venir de là le pb ?

Merci de ton aide.
A+
Tophe
Salut,

Je ne connais pas fpdf mais au vu du source que tu as posté, il semble que l'implémentation dans la classe FPDF des fonction header() et footer() soit vide, c'est d'ailleurs pour cela qu'elles doivent etre redéfinis au debut de ta classe .....

Le fait que la variable $nom de ton pied de page n'apparaisse pas (si j'ai bien comris ton probleme...) viendrait alors peut etre du fait que $nom n'ai tout simplement pas connu au sein de la fonction header() => d'ou une case vide ...

Si le probleme vient de la il faudrait certainement faire des modification plus en amont (dans ../fpdf151/fpdf.php) pour faire en sorte que la fonction header() (certainement appelé dans Addpage()) passe une variable en parametre ....

Suis peut etre completement a coté du problème mais toute piste est bonne a prendre quand on est perdu ......

A+