cs_ach1991raf
Messages postés1Date d'inscriptionmardi 30 novembre 2010StatutMembreDernière intervention10 octobre 2012 10 oct. 2012 à 23:38
merciiiiiiiii pour le code :)
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 3 août 2012 à 15:48
Bonjour ADIKA0123, tu peux faire comme ça
class PDF extends FPDF
{
//En-tête
function Header()
{
//Logo
$this->Image('images/VotreImage.gif',10,8,33);
//Saut de ligne
$this->Ln(1);
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(1);
//Titre
$this->Cell(197,10,'Nom du document si tu veux',1,0,'C');
//Saut de ligne
$this->Ln(5);
$this->SetFont('','B',10);
$this->ExportHeader();
}
//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-20);
//$this->SetY(-50);
//$this->Cell(75,6,'Signature');
//$this->Ln(5);
//$this->ExportSignateur();
//Police Arial italique 8
//$this->Ln(25);
$this->SetFont('Arial','I',7);
//Explication 1
$this->Cell(0,10,'¹ : TYPE : (Type1, Type2, Type3, Type4, ...).',0,0,'L');
//Saut de ligne
$this->Ln(4);
//Explication 2
$this->Cell(0,10,'² : Etat : (*=Etat1, **=Etat2). ',0,0,'L');
//Saut de ligne
$this->Ln(5);
//Numéro de page
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'R');
}
cs_rottweiler
Messages postés117Date d'inscriptiondimanche 7 avril 2002StatutMembreDernière intervention23 octobre 2013 30 juil. 2012 à 09:24
il me tarde de le tester
adika0123
Messages postés9Date d'inscriptionmercredi 31 mars 2010StatutMembreDernière intervention16 mars 2017 29 juil. 2012 à 17:01
bonjour tout le monde
comment ajouter un titre (tete page) personnalisé avec du texte et photo avec ce code
merci d avance
cs_naimanina
Messages postés9Date d'inscriptionmardi 8 juin 2010StatutMembreDernière intervention22 juin 2011 22 juin 2011 à 16:58
De rien j'espère que j'ai répondu a votre question ^_^
bonne chance
begueradj
Messages postés273Date d'inscriptiondimanche 4 octobre 2009StatutMembreDernière intervention24 juin 20149 22 juin 2011 à 16:42
merci pour votre réponse
cs_naimanina
Messages postés9Date d'inscriptionmardi 8 juin 2010StatutMembreDernière intervention22 juin 2011 22 juin 2011 à 15:42
slt les amis(es),
un probleme d'impression des pdf
j'ai une base de données Mysql et je veux lorsque je sélectionne une table a partir d'un combo je clique sur un bouton imprimer pour imprimer la table sous format pdf
j ai déja fait l'affichage des tables sous format pdf a partir de la base de données il me faux maintenant l'imprimer
Merciiiii d'avance :)
cs_naimanina
Messages postés9Date d'inscriptionmardi 8 juin 2010StatutMembreDernière intervention22 juin 2011 22 juin 2011 à 15:38
Slt
pour moi je travail avec la Version : 1.53
et je pense pas qu'il y a une différence entre les différents versions
cs_naimanina
Messages postés9Date d'inscriptionmardi 8 juin 2010StatutMembreDernière intervention22 juin 2011 21 juin 2011 à 18:47
ok merciii younes371 c très gentil de ta part
je vais tester cet exemple ^_^
Mercii une autre fois de m'avoir répondu a ma question :)
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 20 juin 2011 à 13:28
Bonjour naimanina,
tu peux appliquer ce code sur n'importe quel nombre des champs, c'est à toi de creer la requette SELECT et tu peux avoir le resultat de toutes les tables que tu as. Puis tu dois declarer au niveau de FPDF le nombre des champs a affichés :
Exemple :
function ExportHeader()
{
//Titres des colonnes
$header=array('Champ 1 ','Champ 2','Champ 3',''Champ 4','Champ 5','Champ 6',''Champ 7','Champ 8');
$w=array(15,20,12,20,14,19,10,87);
for($i=0;$i<count($header);$i++)
$this->Cell($w[$i],10,$header[$i],1,0,'L',1);
begueradj
Messages postés273Date d'inscriptiondimanche 4 octobre 2009StatutMembreDernière intervention24 juin 20149 20 juin 2011 à 10:16
Quelle version de la classe FPDF a-t-on utilisé ici ?
begueradj
cs_naimanina
Messages postés9Date d'inscriptionmardi 8 juin 2010StatutMembreDernière intervention22 juin 2011 12 mai 2011 à 11:41
Bonjour les amis ,
c la premiere fois que je participe a ce site ,il est vraiment utile :)
Ca marche ce code super bien juste pour une seule table qui a 3 champ mé le problem c que je veux que ce code applique sur tt les table des ma base de données avec n'import qu'elle nombre de champs
Mercii
cs_mohamed2011
Messages postés1Date d'inscriptionjeudi 3 février 2011StatutMembreDernière intervention24 mars 2011 24 mars 2011 à 13:03
salut, j'ai au fin d'étude informatique et mon thème et gestion de prêt d'un bibliothèque je souhaite voir le source avec delphi 7
oliv2223
Messages postés2Date d'inscriptionlundi 19 février 2007StatutMembreDernière intervention22 septembre 2010 22 sept. 2010 à 23:06
Bonjour,
Ca marche super bien sur firefox mais pas sur ie 6.....si quelqu'un a une soluce ca m'interesse .
Merci
aymanovbest
Messages postés4Date d'inscriptionlundi 21 juin 2010StatutMembreDernière intervention28 mars 2010 28 mars 2010 à 10:27
pour cette erreur il faux mettre le contenu output c adire
$pdf->Output("aymanov.pdf","F");
aymanovbest
Messages postés4Date d'inscriptionlundi 21 juin 2010StatutMembreDernière intervention28 mars 2010 20 mars 2010 à 22:48
salut les amis
je sais pour ce code j'ai toujour ce probléme
Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\tav_nbe11\chercher2.php:2) in C:\wamp\www\tav_nbe11\fpdf.php on line 1022
FPDF error: Some data has already been output to browser, can't send PDF file
merci de m'aider
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 28 oct. 2009 à 14:10
Bonjour,
J'ai pu trouvé la solution. Ainsi,je vous transmet un code qui peut faire :
Affiche du logo en entête, plus un titre en entête, plus des informations dynamique en entête et l'entête du tableau qui va contenir le resultat,
Puis (en corps de la page) le resultat à partir de la bse de données (dynamique).
Au pied de page on affiche un tableau pour lasignateure des differents acteurs et aussi le numero de page courant :
<?php
session_start();
// On se connecte à la base
include("cnx.php");
require('fpdf16/fpdf.php');
ob_end_clean();
class PDF extends FPDF
{
//En-tête
function Header()
{
//Logo
$this->Image('images/logo.gif',10,8,33);
//Saut de ligne
$this->Ln(1);
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(1);
//Titre
$this->Cell(197,10,'Fiche',1,0,'C');
//Saut de ligne
$this->Ln(5);
$this->SetFont('','B',10);
$this->ExportHeader();
}
//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-15);
//Numéro de page
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'R');
}
function MultiCell($w, $h, $txt, $border=0, $align='J', $fill=false, $indent=0)
{
//Output text with automatic or explicit line breaks
$cw=&$this->CurrentFont['cw'];
if($w==0)
$w=$this->w-$this->rMargin-$this->x;
//Restauration des couleurs et de la police
$this->SetFillColor(224,230,255); //couleur du fond des cases
$this->SetTextColor(0); //couleur du texte des cases
$this->SetFont('');
$w=array(15,20,20,20,20,15,87);
//Données
$fill=false;
foreach($data as $row)
{
$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetFont('','B');
$this->SetXY(5,40);
//En-tête du tableau
$this->Cell(75,6,'Info 1 :');
$this->Cell(200,6,' : info 1');
$this->Ln();
$this->Cell(75,6,'Info 2 :');
$this->Cell(200,6,' : info 2');
$this->Ln();
$this->Cell(75,6,'chefs departement :');
$this->Cell(200,6,' : '.$chef_departement);
$this->Ln();
$this->Cell(75,6,'Info 4 :');
$this->Ln();
$this->SetFont('Arial','',8);
//Plusieurs lignes
$this->MultiCell(0,5,'Info 4 peut être sur plusieurs lignes',1,'J',0,0);
$this->Ln(15);
$this->SetFont('Arial','B',12);
$this->Cell(75,6,'Liste des Clients');
$this->SetFont('Arial','B',8);
$this->Ln(6);
//En-tête du tableau
$this->SetFillColor(150,180,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');
//Titres des colonnes
$header=array('Nom','Prenom','Ville','Adresse');
$w=array(15,20,20,20,20,15,87);
//Titres des colonnes
$signateur=array('Chef departement','Directeur','Secrétaire','PDG');
$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');
$w=array(49,49,49,49);
$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');
//Requete SQL : Informatiosn sur les objets
$query = 'SELECT nom,prenom,code_ville,adresse FROM clients WHERE code_departement="'.$id.'" ';
$result = mysql_query($query) or die ('Erreur SQL !
' . $query . '
' . mysql_error());
//Boucle sur les resultats
$data = array();
while($row = mysql_fetch_array($result))
{
array($row);
//La selection de l'adresse du client
$code_ville=$row['2'];
$req_ville=mysql_query("SELECT intitule_adresse FROM adresse where code_adresse='".$code_ville."'") or die (mysql_error());
if(mysql_num_rows($req_ville)>0) $row['2']=mysql_result($req_ville,0,"intitule_adresse");
//L'adresse du client
//Affichage des 110 premiers caracteres de l'adresse si la longueur depasse 110 caracteres
if(strlen($row['3'])>110)
$row['3']=stripslashes(substr($row['6'],0,110).'..>');
$data[]=$row;
}
//Requette SQL Information sur les chefs
//Chef departement
$chef_departement= '';
$req_pa=mysql_query("SELECT nom,prenom FROM acteur WHERE code_departement='".$id."' ")or die(mysql_error());
if(mysql_num_rows($req_pa)>0)
{
$nb=0;
//Possiblité d'avoir plusieurs chefs
while ($array = mysql_fetch_array($req_pa))
{
$nom_=$array["nom"];
$prenom_=$array["prenom"];
$chef_departement .= $nom_." ".$prenom_." / ";
}
}
else
{
$resultat_cp .="**** Aucun Chef n'est encore affecté à ce departement ****";
}
younes371
Messages postés502Date d'inscriptionmercredi 29 décembre 2004StatutMembreDernière intervention20 mars 2012 22 oct. 2009 à 18:05
Bonjour,
je vous remercie pour votre code :
LE code ça marche pour moi très bien, mais j'au un seul souci, je veux ajouter En-tête, pied de page (Header et Footer) mais le resultat n'est pas ce que je souhaite; j'ai fais comme celà :
<?php
require('fpdf16/fpdf.php');
// On se connecte à la base
include("cnx/cnx.php");
$id=$_GET['id'];
class PDF extends FPDF
{
//En-tête
function Header()
{
//Logo
$this->Image('images/gipsi_3.gif',10,8,33);
//$this->Cell(40,10,'Hello World !');
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(80);
//Titre
$this->Cell(80,10,'Fiche de mise en exploitation',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');
}
}
//Fichier pdf en format A4
$pdf=new PDF('P','cm','A4');
//Instanciation de la classe dérivée
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Arial','B',8);
$pdf->SetFillColor(96,96,96);
$pdf->SetTextColor(255,255,255);
//La selection des objets du projets demande
$req_list_obj='SELECT nom FROM personne WHERE ville="'.$id.'" ) order by nom_objet ';
$resultat=mysql_query($req_list_obj)or die (mysql_error());
$pdf->SetXY(1,1);
//En-tête du tableau
$w=array(2,2,2,2,2,2,7);
//Titres des colonnes
$header=array('Nom');
/*for($i=0;$i<sizeof($header);$i++)
$pdf->cell(2,1,$header[$i],1,0,'C',1);*/
EMSIEN
Messages postés194Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention11 juin 2009 15 août 2009 à 13:05
Eh ben Super.
cs_javalang
Messages postés18Date d'inscriptiondimanche 29 mars 2009StatutMembreDernière intervention15 août 2009 15 août 2009 à 01:01
C'est trouvé!
je pointais le mauvais fichier.
j'ai pu générer le pdf.
Merci.
cs_javalang
Messages postés18Date d'inscriptiondimanche 29 mars 2009StatutMembreDernière intervention15 août 2009 14 août 2009 à 23:07
Tout de suite, "fpdf.php" est à la base avec "index.php" et "amiwestpres_remix.pdf".
"pagePrint.php" est accéder par un 'case' de "index.php?action=pagePrint"
J'ai mis le code suivant dans "includes/pagePrint.php",
mais le code renvoie un message "FPDF error: Some data has already been output, can't send PDF file"
<?php
require('fpdf.php');
// mode paysage, a4, etc.
$pdf=new FPDF('L','mm','A4');
$pdf->Open();
// champs facultatifs
$pdf->SetAuthor('Hyperion - Ben Hermans');
$pdf->SetCreator('CygnusEd 4.21 & Fpdf');
$pdf->SetTitle('Amiwest AmigaOS 4 Presentation');
$pdf->SetSubject('Remix by bIgdAn');
// on charge les 83 gfx...
$pdf->SetMargins(0,0);
for ($i=1; $i<84; $i++) {
$pdf->AddPage();
//$pdf->Image('Diapositive'.$i.'.JPG',0,0,297,210,'JPEG');
}
// Et on affiche le pdf généré... (ou on le sauvegarde en local)
// $pdf->Output(); pour afficher sur votre navigateur
$pdf->Output('amiwestpres_remix.pdf');
?>
EMSIEN
Messages postés194Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention11 juin 2009 14 août 2009 à 22:26
Des fois il y a une erreur sur font (ce que j'ai trouvé dans les forums), tu pourras te balader dessus et trouver des réponses ...
J'espère que ça pourra te servir, bon courage.
cs_javalang
Messages postés18Date d'inscriptiondimanche 29 mars 2009StatutMembreDernière intervention15 août 2009 14 août 2009 à 22:00
Merci, je vais continuer à me casser la tête.
Merci pour ton exemple.
EMSIEN
Messages postés194Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention11 juin 2009 14 août 2009 à 21:50
Salut Javalang,
je ne me rappelle pas vraiment ou j'ai mis le répertoire de FPDF, je crois que tu peux le mettre au même niveau que mondossier, càd sous www et il suffit juste de bien donner le bon chemin.
Sinon pour un guide pas à pas, tu pourras voir sur leur site d'ou tu as téléchargé FPDF ou bien une petite recherche sur le net tu permettras de trouver tout ce que tu veux.
Bon courage.
cs_javalang
Messages postés18Date d'inscriptiondimanche 29 mars 2009StatutMembreDernière intervention15 août 2009 14 août 2009 à 04:13
salut, EMSIEN!
p'tètre que ça paraît bête!
Je veux commencer avec FPDF.
J'ai lu sur www.fpdf.org
J'ai téléchargé le dossier dans EasyPhp 3.0/www/mondossier où se trouve mon index.php.
J'ai essayé ton code. RIEN-RIEN-RIEN
Je ne sais pas où mettre le fichier, comment paramétrer.
Je sollicite un guide pas-à-pas.
Merci.
gaetan59242
Messages postés1Date d'inscriptiondimanche 25 janvier 2009StatutMembreDernière intervention 3 juin 2009 3 juin 2009 à 15:16
Bonjour à tous !!!!
Voila j'ai tester le code le code et je l'ai lis dans une page pour qu'un bouton envoyer générer le code jusque là pas de souci.
Avec Wamp il me dit :
Parse error: parse error in C:\wamp\www\base propre\import_pdf_classes.html on line 28
<?php
*//C'est ici la ligne 28 là je ne comprend pas pourquoi?
* require('fpdf.php');
*
* $pdf=new FPDF('P','cm','A4');
*
* //Titres des colonnes
* $header=array('Nom','Prenom','');
*
* $pdf->SetFont('Arial','B',14);
* $pdf->AddPage();
* $pdf->SetFillColor(96,96,96);
* $pdf->SetTextColor(255,255,255);
* mysql_connect('localhost','root','') or die("ERROR DATABASE CONNECTION");
* mysql_select_db('cantine') or die("DATA SELECTION ERRROR");
* $query="select * cantine_rens_gen";
if (isset($_GET['gestion des élèves'])){
$classe=$_GET['gestion des élèves'];
}
else
{
$classe="CM2";
}
echo '<form action="" method="POST">';
$query ="SELECT nom,prenom FROM cantine_rens_gen WHERE classes='$classe'";
$result = mysql_query($query) or die ("query failed");
Merci pour cette demo et ce script, je m'en suis inspiré pour mon générateur de devis ;)
assenaff
Messages postés1Date d'inscriptionjeudi 13 septembre 2007StatutMembreDernière intervention30 juin 2008 30 juin 2008 à 14:52
Bonjour.
en ce qui concerne le probleme de NS_DEUX,
tu dois remettre la ligne "require(fpdf.php);"dans ton code.et ensuite tu supprimes toutes les balises html.(comme <html></html>).
Il ne doit rester que <?php et ?>.
Au revoir.
EMSIEN
Messages postés194Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention11 juin 2009 4 avril 2008 à 01:04
Agredel
Messages postés9Date d'inscriptionjeudi 15 novembre 2007StatutMembreDernière intervention 3 avril 2008 3 avril 2008 à 16:33
Bonjour, j'aurai 2 questions.
1 Peut-on insérer ce script comportant des donnée issues d'un base de donnée et disposée nom pas sous forme de tableau mais sous forme de colonne (comme les articles de presse)?
2 Comment la position des entetes de colonne du tableau sont-elles reconnus. (probleme de chevauchement dans les nom des en-tetes de colonne)?
Merci pour ta réponse
Cordialement
cs_diego29
Messages postés22Date d'inscriptionmardi 3 juin 2003StatutMembreDernière intervention17 octobre 2007 13 juin 2007 à 10:54
Bonjour,
j'ai essayé ce code à l'identique en le nommant gen_pdf.php j'obtient l'erreur suivante :
Warning: Cannot modify header information - headers already sent by (output started at H:\serveur web\ZMWS\_web.zmwsc\conference\gen_pdf.php:11) in H:\serveur web\ZMWS\_web.zmwsc\conference\fpdf.php on line 1022
FPDF error: Some data has already been output to browser, can't send PDF file.
une idée sur la résolution de ce problème ?
merci
ns_deux
Messages postés10Date d'inscriptionsamedi 3 janvier 2004StatutMembreDernière intervention29 août 20061 26 avril 2007 à 07:10
voilà le message si je retire le fpdf.php
Warning: main(fpdf.php) [function.main]: failed to open stream: No such file or directory in c:\wamp\www\recherche_resultat_impression.php on line 5
Fatal error: main() [function.require]: Failed opening required 'fpdf.php' (include_path='.;C:\php5\pear') in c:\wamp\www\recherche_resultat_impression.php on line 5
EMSIEN
Messages postés194Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention11 juin 2009 25 avril 2007 à 22:46
à mon avis tu envoies quelque chose avant d'envoyer ce qui est générer en PDF, je pense qu'il s'agit de tA PAGE fond.php essaie de l'enlever pour voir si de ça vient le problème.
Bonne chance.
ns_deux
Messages postés10Date d'inscriptionsamedi 3 janvier 2004StatutMembreDernière intervention29 août 20061 25 avril 2007 à 22:38
Bonjour à tous,
Voilà j'essais d'afficher dans un tableau PDF avec FPDF le resultat d'une requete de recherche mais j'ai le messages d'erreur : FPDF error: Some data has already been output, can't send PDF file.
ma requete est bonne. Je vous passe mon code
Code :
<?php define('FPDF_FONTPATH','font/'); include("fond.php"); require("connect_atelier.php"); require('fpdf.php'); $req=$_POST['passage_req']; $pdf=new FPDF('P','cm','A4'); //Titres des colonnes $header=array('Nb','Winpark','Matériel','Modèle','Numéro','Unité','Utilisation','Nom CSAV'); $pdf->SetFont('Arial','B',14); $pdf->AddPage(); $pdf->SetFillColor(96,96,96); $pdf->SetTextColor(255,255,255); $resultat=mysql_query(stripslashes($req),$connect)or die ('
<center>La reponse ne contient aucun enregistrement
ou
une erreur est survenue qui est : '.mysql_error().'</center>' ); $pdf->SetXY(3,3); for($i=0;$i<sizeof($header);$i++) $pdf->cell(5,1,$header[$i],1,0,'C',1); $pdf->SetFillColor(0xdd,0xdd,0xdd); $pdf->SetTextColor(0,0,0); $pdf->SetFont('Arial','',10); $pdf->SetXY(8,$pdf->GetY()+1); $fond=0; $j=1; while($row=mysql_fetch_array($resultat)) { $pdf->cell(5,0.7,$j,1,0,'C',$fond); $j=$j+1; $pdf->cell(5,0.7,$row['winpark'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['materiel'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['modele'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['numero'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['unite'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['utilisation'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['nom_csav'],1,0,'C',$fond); $pdf->SetXY(3,$pdf->GetY()+0.7); $fond=!$fond; } $pdf->output(); ?>
Si qq'un peut m'aider
Merci d'avance
yanchasp
Messages postés1Date d'inscriptionmardi 23 août 2005StatutMembreDernière intervention28 septembre 2006 28 sept. 2006 à 16:38
Salut,
voila je l'avais deja mis cette classe, pour la lecture de bdd, ca se passe bien a part une chose, les espaces.
Si dans ma bdd, j'ai "208 route dici" --> quand je lis dans le pdf il me saute le texte apres le premier espace --> "208" et plus rien.
Est ce que quelqu'un aurait la solution s'il vous plait merci ;-)
gaelgerard
Messages postés2Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention 6 juillet 2006 6 juil. 2006 à 12:12
Evidemment les <quote> et </quote> sont là pour faire joli et à ne pas mettre dans vos pages.
Y a pas une fonction de ce type dans le forum ?
gaelgerard
Messages postés2Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention 6 juillet 2006 6 juil. 2006 à 12:10
Super code merci beaucoup.
Je cherche moi la possibilité de créer à la volée depuis un formulaire. Je pense que la je suis sur la bonne voie.
Pour Cyril, autre méthode que créer une copie de la librairie dans tous les dossiers, tu peux également l'appeler depuis ta page. Cf si elle se trouve dans un dossier patent tu fais <quote> require('dossier/fpdf.php'); </quote> au lieu de <quote> require('fpdf.php');
</quote>
Bonne journée à tout le monde
lotfikecir
Messages postés2Date d'inscriptiondimanche 25 juin 2006StatutMembreDernière intervention 5 novembre 2006 25 juin 2006 à 17:35
salut les amis, je n'arrive pas à récuperer mes fichiers PDF dans les base de données MySQL?
cs_cacoucatatonique
Messages postés164Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention 7 octobre 2009 31 mai 2006 à 08:13
salut
pour la librairie FPDF il faut le mettre dans chaque sous dossier ou tu va l'utiliser, il faut obligatoirement que la page qui va te generer ta page pdf soir exclusivement dedier au pdf, pas de print pas d'echos pas dimage sauf avec les commande du FPDF.
parcontre montre nous tton bout de code qui va generer ton pdf pour que lon puisse savoir ou est ton bleme.
a+
cyril
meibi55
Messages postés12Date d'inscriptionlundi 1 novembre 2004StatutMembreDernière intervention31 mai 2006 31 mai 2006 à 07:58
Bonjour,
Merci pour votre Code-Source, lorsque que j'ajoute ce bout de code dans ma page ce message d'erreur vient lors de l'execution :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\inetpub\wwwroot\N_consecutifs\utilisateur\attr_auto.php3 on line 151
Warning: Cannot modify header information - headers already sent by (output started at c:\inetpub\wwwroot\N_consecutifs\utilisateur\attr_auto.php3:151) in c:\inetpub\wwwroot\N_consecutifs\utilisateur\fpdf.php on line 1022
FPDF error: Some data has already been output to browser, can't send PDF file
------------------------------------------------------------------------------------
Je connais très mal la fonction PDF dans PHP donc j'ai aucune idée de quoi cela peut venir, et pour la librairie FPDF je suis pas sur de l'avoir installé correctement, j'ai juste décompresser les fichiers downloader sur le site officiel, dans le même dossier ou se trouve ma page dans laquelle j'ai besoin de générer un PDF.
Je me demandais en fait si on doit vraiment ajouter ce bout de code dans notre page, ou si il faut plutot créer une page indépendente nommée par exemple "pdf.php" et ensuite l'appeler depuis l'autre page mais la je savais pas comment transmettre les valeur des variables... enfin j'aurai besoin de quelques infos parce que je nage un peu en eaux troubles la...
D'avance merci beaucoup !
Loïc
EMSIEN
Messages postés194Date d'inscriptionlundi 26 juillet 2004StatutMembreDernière intervention11 juin 2009 5 mars 2006 à 14:55
Salut LILA,
Peut être que ça marche pas chez toi parce qu'il ya un problème sur le résultat de ta requête.
Pour l'explication de la ligne: $pdf->SetXY(3,$pdf->GetY()+0.7);
elle permet de positionner le curseurà la colonne 3 (pour l'aligner avec le début du Tableau et il prends la valeur ou on se trouve sur les lignes(GetY();) puisque les lignes s'incrémente et enfin concernant le 0.7 c'est la hauteur d'une Cellule du Tableau ($pdf->cell(5,0.7,$row['nom'],1,0,'C',$fond);).
J'espère que j'ai pu répondre à ta question comme il le faut,sinon tu pourra toujours me contacter par mail pour parler d'avantage sur la chose.
Cordialement Mehdi.
http://ntic.blogspirit.com
cs_lilab
Messages postés7Date d'inscriptionvendredi 15 octobre 2004StatutMembreDernière intervention11 avril 2006 4 mars 2006 à 11:26
salut tres sympa ton code je lai tester mais j'ai un petit soucis le pdf est généré par contre il ne maffiche que le libellé des colonnes mais pa le resultat e la requete jaimerais aussi savoir comment interpréter cette ligne de code"$pdf->SetXY(3,$pdf->GetY()+0.7); "
cs_lilab
Messages postés7Date d'inscriptionvendredi 15 octobre 2004StatutMembreDernière intervention11 avril 2006 4 mars 2006 à 11:10
salut
jai tester ton code il est vraiment pa mal et tres comprehensible, par contre j'ai un petit soucis; lorsque le pdf est généré il ne maffiche que le libéllé de chaque colonne mais pas les données de la requete et aussi jaimerais savoir comment interpréter cette ligne de code "$pdf->SetXY(3,$pdf->GetY()+0.7); "
merco
statopulos01
Messages postés18Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention 1 août 2007 28 févr. 2006 à 02:37
Merci pour ton code c'est très sympa de ta part EMSIEN, c'est pile ce que je cherchais comme base :)
doudio
Messages postés2Date d'inscriptionmardi 20 décembre 2005StatutMembreDernière intervention 3 janvier 2006 3 janv. 2006 à 22:16
ton code est pas mal joli 8/10
ouadou44
Messages postés3Date d'inscriptionvendredi 4 mars 2005StatutMembreDernière intervention25 octobre 2005 28 oct. 2005 à 02:24
salut
j'ai bien tester ton code, il est super super, il m'a donnée une nouvelle idée sur les possibilité de PHP.
la librairie FPDF v 1.53 est disponible avec un Manuel de référence, un FAQ et un tutorial+(Doc, Historique).
j'ai un peut tester la procedure c'est tout a fait pratiquable, Mais c'est purement Orienté Objet.
il suffit de maitriser les méthode de la class FPDF et de les appeler corectement.
il y'a deux superbe méthode :"Fouther" et "Header" pour haut et pied de page(nbr page,titre...tous ça au tutoriel).
Merci.
Merci également pour ton code simple et clair.
ouadou44@hotmail.com
pithanta
Messages postés5Date d'inscriptiondimanche 11 septembre 2005StatutMembreDernière intervention 6 octobre 2005 6 oct. 2005 à 07:52
pour donner des réponses comme inutil de passer par le forum
cs_cacoucatatonique
Messages postés164Date d'inscriptionvendredi 25 février 2005StatutMembreDernière intervention 7 octobre 2009 5 oct. 2005 à 13:52
moi j'ai un autre probleme, quant je lui demande d'afficher deux mots lui il m'affiche n'importe quoi!!!
comment faire?
massacr
Messages postés233Date d'inscriptionvendredi 2 juillet 2004StatutMembreDernière intervention 4 janvier 2007 5 oct. 2005 à 13:22
Pratique...
8/10
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 5 oct. 2005 à 09:33
Cherche sur php.net...
pithanta
Messages postés5Date d'inscriptiondimanche 11 septembre 2005StatutMembreDernière intervention 6 octobre 2005 5 oct. 2005 à 09:20
pour l'instant je travail en local
sous wamp et mysql
ou puis je trouver d'autre librairie
pit
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 5 oct. 2005 à 08:56
;-)
Puisque tu es débutant, précisons que cette librairie n'étant pas incluse dans le package de base de php, il y a peu de chance que ton hébergeur la possède, si tu es en mutualisé. (sinon, tout peut s'arranger)
pithanta
Messages postés5Date d'inscriptiondimanche 11 septembre 2005StatutMembreDernière intervention 6 octobre 2005 5 oct. 2005 à 08:12
bonjour,
je debute evidemment mais ma question somme toute logique, ou trouve t on la librairie fpdf
merci
Pit
10 oct. 2012 à 23:38
3 août 2012 à 15:48
class PDF extends FPDF
{
//En-tête
function Header()
{
//Logo
$this->Image('images/VotreImage.gif',10,8,33);
//Saut de ligne
$this->Ln(1);
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(1);
//Titre
$this->Cell(197,10,'Nom du document si tu veux',1,0,'C');
//Saut de ligne
$this->Ln(5);
$this->SetFont('','B',10);
$this->ExportHeader();
}
//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-20);
//$this->SetY(-50);
//$this->Cell(75,6,'Signature');
//$this->Ln(5);
//$this->ExportSignateur();
//Police Arial italique 8
//$this->Ln(25);
$this->SetFont('Arial','I',7);
//Explication 1
$this->Cell(0,10,'¹ : TYPE : (Type1, Type2, Type3, Type4, ...).',0,0,'L');
//Saut de ligne
$this->Ln(4);
//Explication 2
$this->Cell(0,10,'² : Etat : (*=Etat1, **=Etat2). ',0,0,'L');
//Saut de ligne
$this->Ln(5);
//Numéro de page
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'R');
}
Et en bas :
//Creation pdf
$pdf=new PDF('P');
//Tableau
$pdf->SetFont('Arial','',7);
$pdf->SetMargins(5,20);
$pdf->AliasNbPages();
$pdf->AddPage();
//
//Affichage des données
//
$pdf->ExportTableau($data);
$pdf->ln(5);
//$pdf->SetY(-60);
$pdf->SetFont('Arial','B',12);
$pdf->Cell(75,6,'Signature');
$pdf->Output('Nom_du_fichier_'.date("Y_m_d").'.pdf','I');
30 juil. 2012 à 09:24
29 juil. 2012 à 17:01
comment ajouter un titre (tete page) personnalisé avec du texte et photo avec ce code
merci d avance
22 juin 2011 à 16:58
bonne chance
22 juin 2011 à 16:42
22 juin 2011 à 15:42
un probleme d'impression des pdf
j'ai une base de données Mysql et je veux lorsque je sélectionne une table a partir d'un combo je clique sur un bouton imprimer pour imprimer la table sous format pdf
j ai déja fait l'affichage des tables sous format pdf a partir de la base de données il me faux maintenant l'imprimer
Merciiiii d'avance :)
22 juin 2011 à 15:38
pour moi je travail avec la Version : 1.53
et je pense pas qu'il y a une différence entre les différents versions
21 juin 2011 à 18:47
je vais tester cet exemple ^_^
Mercii une autre fois de m'avoir répondu a ma question :)
20 juin 2011 à 13:28
tu peux appliquer ce code sur n'importe quel nombre des champs, c'est à toi de creer la requette SELECT et tu peux avoir le resultat de toutes les tables que tu as. Puis tu dois declarer au niveau de FPDF le nombre des champs a affichés :
Exemple :
function ExportHeader()
{
//Titres des colonnes
$header=array('Champ 1 ','Champ 2','Champ 3',''Champ 4','Champ 5','Champ 6',''Champ 7','Champ 8');
$w=array(15,20,12,20,14,19,10,87);
for($i=0;$i<count($header);$i++)
$this->Cell($w[$i],10,$header[$i],1,0,'L',1);
$this->Ln();
}
/Requette SELECT : $result
$data = array();
while($row = mysql_fetch_array($result))
{
array($row);
$data[]=$row;
}
A votre disposition
20 juin 2011 à 10:16
begueradj
12 mai 2011 à 11:41
c la premiere fois que je participe a ce site ,il est vraiment utile :)
Ca marche ce code super bien juste pour une seule table qui a 3 champ mé le problem c que je veux que ce code applique sur tt les table des ma base de données avec n'import qu'elle nombre de champs
Mercii
24 mars 2011 à 13:03
22 sept. 2010 à 23:06
Ca marche super bien sur firefox mais pas sur ie 6.....si quelqu'un a une soluce ca m'interesse .
Merci
28 mars 2010 à 10:27
$pdf->Output("aymanov.pdf","F");
20 mars 2010 à 22:48
je sais pour ce code j'ai toujour ce probléme
Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\tav_nbe11\chercher2.php:2) in C:\wamp\www\tav_nbe11\fpdf.php on line 1022
FPDF error: Some data has already been output to browser, can't send PDF file
merci de m'aider
28 oct. 2009 à 14:10
J'ai pu trouvé la solution. Ainsi,je vous transmet un code qui peut faire :
Affiche du logo en entête, plus un titre en entête, plus des informations dynamique en entête et l'entête du tableau qui va contenir le resultat,
Puis (en corps de la page) le resultat à partir de la bse de données (dynamique).
Au pied de page on affiche un tableau pour lasignateure des differents acteurs et aussi le numero de page courant :
<?php
session_start();
// On se connecte à la base
include("cnx.php");
require('fpdf16/fpdf.php');
ob_end_clean();
class PDF extends FPDF
{
//En-tête
function Header()
{
//Logo
$this->Image('images/logo.gif',10,8,33);
//Saut de ligne
$this->Ln(1);
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(1);
//Titre
$this->Cell(197,10,'Fiche',1,0,'C');
//Saut de ligne
$this->Ln(5);
$this->SetFont('','B',10);
$this->ExportHeader();
}
//Pied de page
function Footer()
{
//Positionnement à 1,5 cm du bas
$this->SetY(-15);
//Numéro de page
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'R');
}
function MultiCell($w, $h, $txt, $border=0, $align='J', $fill=false, $indent=0)
{
//Output text with automatic or explicit line breaks
$cw=&$this->CurrentFont['cw'];
if($w==0)
$w=$this->w-$this->rMargin-$this->x;
$wFirst = $w-$indent;
$wOther = $w;
$wmaxFirst=($wFirst-2*$this->cMargin)*1000/$this->FontSize;
$wmaxOther=($wOther-2*$this->cMargin)*1000/$this->FontSize;
$s=str_replace("\r",'',$txt);
$nb=strlen($s);
if($nb>0 && $s[$nb-1]=="\n")
$nb--;
$b=0;
if($border)
{
if($border==1)
{
$border='LTRB';
$b='LRT';
$b2='LR';
}
else
{
$b2='';
if(is_int(strpos($border,'L')))
$b2.='L';
if(is_int(strpos($border,'R')))
$b2.='R';
$b=is_int(strpos($border,'T')) ? $b2.'T' : $b2;
}
}
$sep=-1;
$i=0;
$j=0;
$l=0;
$ns=0;
$nl=1;
$first=true;
while($i<$nb)
{
//Get next character
$c=$s[$i];
if($c=="\n")
{
//Explicit line break
if($this->ws>0)
{
$this->ws=0;
$this->_out('0 Tw');
}
$this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
$i++;
$sep=-1;
$j=$i;
$l=0;
$ns=0;
$nl++;
if($border && $nl==2)
$b=$b2;
continue;
}
if($c==' ')
{
$sep=$i;
$ls=$l;
$ns++;
}
$l+=$cw[$c];
if ($first)
{
$wmax = $wmaxFirst;
$w = $wFirst;
}
else
{
$wmax = $wmaxOther;
$w = $wOther;
}
if($l>$wmax)
{
//Automatic line break
if($sep==-1)
{
if($i==$j)
$i++;
if($this->ws>0)
{
$this->ws=0;
$this->_out('0 Tw');
}
$SaveX = $this->x;
if ($first && $indent>0)
{
$this->SetX($this->x + $indent);
$first=false;
}
$this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
$this->SetX($SaveX);
}
else
{
if($align=='J')
{
$this->ws=($ns>1) ? ($wmax-$ls)/1000*$this->FontSize/($ns-1) : 0;
$this->_out(sprintf('%.3f Tw',$this->ws*$this->k));
}
$SaveX = $this->x;
if ($first && $indent>0)
{
$this->SetX($this->x + $indent);
$first=false;
}
$this->Cell($w,$h,substr($s,$j,$sep-$j),$b,2,$align,$fill);
$this->SetX($SaveX);
$i=$sep+1;
}
$sep=-1;
$j=$i;
$l=0;
$ns=0;
$nl++;
if($border && $nl==2)
$b=$b2;
}
else
$i++;
}
//Last chunk
if($this->ws>0)
{
$this->ws=0;
$this->_out('0 Tw');
}
if($border && is_int(strpos($border,'B')))
$b.='B';
$this->Cell($w,$h,substr($s,$j,$i),$b,2,$align,$fill);
$this->x=$this->lMargin;
}//End function Multicell
//Tableau coloré
function ExportTableau($data)
{
//Restauration des couleurs et de la police
$this->SetFillColor(224,230,255); //couleur du fond des cases
$this->SetTextColor(0); //couleur du texte des cases
$this->SetFont('');
$w=array(15,20,20,20,20,15,87);
//Données
$fill=false;
foreach($data as $row)
{
$this->Cell($w[0],6,$row[0],'LR',0,'L',$fill);
$this->Cell($w[1],6,$row[1],'LR',0,'L',$fill);
$this->Cell($w[2],6,$row[2],'LR',0,'C',$fill);
$this->Cell($w[3],6,$row[3],'LR',0,'C',$fill);
$this->Cell($w[4],6,$row[4],'LR',0,'C',$fill);
$this->Cell($w[5],6,$row[5],'LR',0,'C',$fill);
$this->Cell($w[6],6,$row[6],'LR',0,'L',$fill);
//$this->Cell($w[7],6,$row[7],'LR',0,'L',$fill);
$this->Ln(6);
$fill=!$fill;
}//foreach
$this->Cell(array_sum($w),0,'','T');
}
//Tableau coloré
function ExportHeader()
{
$chef_departement=$_SESSION['chef_departement'];
//Couleurs, épaisseur du trait et police grasse
$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetFont('','B');
$this->SetXY(5,40);
//En-tête du tableau
$this->Cell(75,6,'Info 1 :');
$this->Cell(200,6,' : info 1');
$this->Ln();
$this->Cell(75,6,'Info 2 :');
$this->Cell(200,6,' : info 2');
$this->Ln();
$this->Cell(75,6,'chefs departement :');
$this->Cell(200,6,' : '.$chef_departement);
$this->Ln();
$this->Cell(75,6,'Info 4 :');
$this->Ln();
$this->SetFont('Arial','',8);
//Plusieurs lignes
$this->MultiCell(0,5,'Info 4 peut être sur plusieurs lignes',1,'J',0,0);
$this->Ln(15);
$this->SetFont('Arial','B',12);
$this->Cell(75,6,'Liste des Clients');
$this->SetFont('Arial','B',8);
$this->Ln(6);
//En-tête du tableau
$this->SetFillColor(150,180,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');
//Titres des colonnes
$header=array('Nom','Prenom','Ville','Adresse');
$w=array(15,20,20,20,20,15,87);
for($i=0;$i<count($header);$i++)
$this->Cell($w[$i],10,$header[$i],1,0,'L',1);
$this->Ln();
}
function ExportSignateur()
{
//Titres des colonnes
$signateur=array('Chef departement','Directeur','Secrétaire','PDG');
$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');
$w=array(49,49,49,49);
$this->SetFillColor(255,255,255); //fond des entetes de colonnes
$this->SetTextColor(0); //couleur du texte des entetes des colonnes
$this->SetDrawColor(0); // couleur des bordures
$this->SetLineWidth(.3); //epaisseur des traits
$this->SetFont('','B');
for($i=0;$i<count($signateur);$i++)
$this->Cell($w[$i],10,$signateur[$i],1,0,'C',1);
$this->Ln(10);
for($i=0;$i<count($signateur);$i++)
$this->Cell($w[$i],20,' ',1,0,'C',1);
$this->Ln(5);
}
}
//Identifiant du projet
$id=$_GET['id'];
//Requete SQL : Informatiosn sur les objets
$query = 'SELECT nom,prenom,code_ville,adresse FROM clients WHERE code_departement="'.$id.'" ';
$result = mysql_query($query) or die ('Erreur SQL !
' . $query . '
' . mysql_error());
//Boucle sur les resultats
$data = array();
while($row = mysql_fetch_array($result))
{
array($row);
//La selection de l'adresse du client
$code_ville=$row['2'];
$req_ville=mysql_query("SELECT intitule_adresse FROM adresse where code_adresse='".$code_ville."'") or die (mysql_error());
if(mysql_num_rows($req_ville)>0) $row['2']=mysql_result($req_ville,0,"intitule_adresse");
//L'adresse du client
//Affichage des 110 premiers caracteres de l'adresse si la longueur depasse 110 caracteres
if(strlen($row['3'])>110)
$row['3']=stripslashes(substr($row['6'],0,110).'..>');
$data[]=$row;
}
//Requette SQL Information sur les chefs
//Chef departement
$chef_departement= '';
$req_pa=mysql_query("SELECT nom,prenom FROM acteur WHERE code_departement='".$id."' ")or die(mysql_error());
if(mysql_num_rows($req_pa)>0)
{
$nb=0;
//Possiblité d'avoir plusieurs chefs
while ($array = mysql_fetch_array($req_pa))
{
$nom_=$array["nom"];
$prenom_=$array["prenom"];
$chef_departement .= $nom_." ".$prenom_." / ";
}
}
else
{
$resultat_cp .="**** Aucun Chef n'est encore affecté à ce departement ****";
}
$_SESSION['chef_departement']=$chef_departement;
//Creation pdf
$pdf=new PDF('P');
//Tableau
$pdf->SetFont('Arial','',8);
$pdf->SetMargins(5,20);
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->ExportTableau($data);
$pdf->ln(20);
$pdf->SetY(-60);
$pdf->SetFont('Arial','B',12);
$pdf->Cell(75,6,'Signature');
$pdf->ln(6);
$pdf->SetFont('Arial','B',8);
$pdf->ExportSignateur();
$pdf->Output('Fiche_'.$id.'_'.date("Y_m_d").'.pdf','I');
?>
22 oct. 2009 à 18:05
je vous remercie pour votre code :
LE code ça marche pour moi très bien, mais j'au un seul souci, je veux ajouter En-tête, pied de page (Header et Footer) mais le resultat n'est pas ce que je souhaite; j'ai fais comme celà :
<?php
require('fpdf16/fpdf.php');
// On se connecte à la base
include("cnx/cnx.php");
$id=$_GET['id'];
class PDF extends FPDF
{
//En-tête
function Header()
{
//Logo
$this->Image('images/gipsi_3.gif',10,8,33);
//$this->Cell(40,10,'Hello World !');
//Police Arial gras 15
$this->SetFont('Arial','B',15);
//Décalage à droite
$this->Cell(80);
//Titre
$this->Cell(80,10,'Fiche de mise en exploitation',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');
}
}
//Fichier pdf en format A4
$pdf=new PDF('P','cm','A4');
//Instanciation de la classe dérivée
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Arial','B',8);
$pdf->SetFillColor(96,96,96);
$pdf->SetTextColor(255,255,255);
//La selection des objets du projets demande
$req_list_obj='SELECT nom FROM personne WHERE ville="'.$id.'" ) order by nom_objet ';
$resultat=mysql_query($req_list_obj)or die (mysql_error());
$pdf->SetXY(1,1);
//En-tête du tableau
$w=array(2,2,2,2,2,2,7);
//Titres des colonnes
$header=array('Nom');
/*for($i=0;$i<sizeof($header);$i++)
$pdf->cell(2,1,$header[$i],1,0,'C',1);*/
$pdf->cell( $w[0],1,$header[0],1,0,'C',1);
$pdf->SetFillColor(0xdd,0xdd,0xdd);
$pdf->SetTextColor(0,0,0);
$pdf->SetFont('Arial','',8);
$pdf->SetXY(1,$pdf->GetY()+1);
$fond=0;
while($row=mysql_fetch_array($resultat))
{
//Remplissage des cellule du tableau
$pdf->cell($w[0],1,$row['nom'],1,0,'C',$fond);
$pdf->SetXY(1,$pdf->GetY()+1);
$fond=!$fond;
}
$pdf->output('Fiche'.$id.'_'.date("Y_m_d").'.pdf','I');
?>
Merci pour votre aide
15 août 2009 à 13:05
15 août 2009 à 01:01
je pointais le mauvais fichier.
j'ai pu générer le pdf.
Merci.
14 août 2009 à 23:07
"pagePrint.php" est accéder par un 'case' de "index.php?action=pagePrint"
J'ai mis le code suivant dans "includes/pagePrint.php",
mais le code renvoie un message "FPDF error: Some data has already been output, can't send PDF file"
<?php
require('fpdf.php');
// mode paysage, a4, etc.
$pdf=new FPDF('L','mm','A4');
$pdf->Open();
// champs facultatifs
$pdf->SetAuthor('Hyperion - Ben Hermans');
$pdf->SetCreator('CygnusEd 4.21 & Fpdf');
$pdf->SetTitle('Amiwest AmigaOS 4 Presentation');
$pdf->SetSubject('Remix by bIgdAn');
// on charge les 83 gfx...
$pdf->SetMargins(0,0);
for ($i=1; $i<84; $i++) {
$pdf->AddPage();
//$pdf->Image('Diapositive'.$i.'.JPG',0,0,297,210,'JPEG');
}
// Et on affiche le pdf généré... (ou on le sauvegarde en local)
// $pdf->Output(); pour afficher sur votre navigateur
$pdf->Output('amiwestpres_remix.pdf');
?>
14 août 2009 à 22:26
http://obligement.free.fr/articles/fpdf.php
http://www.phpcs.com/forum/sujet-COMMENT-INSTALLER-FPDF_526992.aspx
Des fois il y a une erreur sur font (ce que j'ai trouvé dans les forums), tu pourras te balader dessus et trouver des réponses ...
J'espère que ça pourra te servir, bon courage.
14 août 2009 à 22:00
Merci pour ton exemple.
14 août 2009 à 21:50
je ne me rappelle pas vraiment ou j'ai mis le répertoire de FPDF, je crois que tu peux le mettre au même niveau que mondossier, càd sous www et il suffit juste de bien donner le bon chemin.
Sinon pour un guide pas à pas, tu pourras voir sur leur site d'ou tu as téléchargé FPDF ou bien une petite recherche sur le net tu permettras de trouver tout ce que tu veux.
Bon courage.
14 août 2009 à 04:13
p'tètre que ça paraît bête!
Je veux commencer avec FPDF.
J'ai lu sur www.fpdf.org
J'ai téléchargé le dossier dans EasyPhp 3.0/www/mondossier où se trouve mon index.php.
J'ai essayé ton code. RIEN-RIEN-RIEN
Je ne sais pas où mettre le fichier, comment paramétrer.
Je sollicite un guide pas-à-pas.
Merci.
3 juin 2009 à 15:16
Voila j'ai tester le code le code et je l'ai lis dans une page pour qu'un bouton envoyer générer le code jusque là pas de souci.
Avec Wamp il me dit :
Parse error: parse error in C:\wamp\www\base propre\import_pdf_classes.html on line 28
Voici le code de ma page
<html>
<head>
<link href="index.css" rel="stylesheet" type="text/css" />
<script language="javascript" src="verif_formulaire.js"></script>
</head>
Importation de classes en pdf ...
<form method="POST" action="" name="formulaire">
Classe : <select size="1" name="classe">
<option selected></option>
<option>CM2</option>
<option>CM1</option>
<option>CE2</option>
<option>CE1</option>
<option>CP</option>
<option>Mat. grands</option>
<option>Mat. moyens</option>
<option>Mat. petits</option>
</select>
<?php
*//C'est ici la ligne 28 là je ne comprend pas pourquoi?
* require('fpdf.php');
*
* $pdf=new FPDF('P','cm','A4');
*
* //Titres des colonnes
* $header=array('Nom','Prenom','');
*
* $pdf->SetFont('Arial','B',14);
* $pdf->AddPage();
* $pdf->SetFillColor(96,96,96);
* $pdf->SetTextColor(255,255,255);
* mysql_connect('localhost','root','') or die("ERROR DATABASE CONNECTION");
* mysql_select_db('cantine') or die("DATA SELECTION ERRROR");
* $query="select * cantine_rens_gen";
if (isset($_GET['gestion des élèves'])){
$classe=$_GET['gestion des élèves'];
}
else
{
$classe="CM2";
}
echo '<form action="" method="POST">';
$query ="SELECT nom,prenom FROM cantine_rens_gen WHERE classes='$classe'";
$result = mysql_query($query) or die ("query failed");
* $resultat=mysql_query($query);
*
* $pdf->SetXY(3,3);
* for($i=0;$i<sizeof($header);$i++)
* $pdf->cell(5,1,$header[$i],1,0,'C',1)
*
* $pdf->SetFillColor(0xdd,0xdd,0xdd);
* $pdf->SetTextColor(0,0,0);
* $pdf->SetFont('Arial','',10);
* $pdf->SetXY(3,$pdf->GetY()+1);
* $fond=0;
* while($row=mysql_fetch_array($resultat))
* {
* $pdf->cell(5,0.7,$row['nom'],1,0,'C',$fond);
* $pdf->cell(5,0.7,$row['prenom'],1,0,'C',$fond);
* $pdf->SetXY(3,$pdf->GetY()+0.7);
* $fond=!$fond;
* }
* $pdf->output();
* ?>
</form>
</html>
Merci de m'aider.
27 mars 2009 à 17:23
8 nov. 2008 à 11:34
31 juil. 2008 à 08:52
30 juin 2008 à 14:52
en ce qui concerne le probleme de NS_DEUX,
tu dois remettre la ligne "require(fpdf.php);"dans ton code.et ensuite tu supprimes toutes les balises html.(comme <html></html>).
Il ne doit rester que <?php et ?>.
Au revoir.
4 avril 2008 à 01:04
http://www.fpdf.org/fr/tutorial/tuto4.htm (source)
http://www.fpdf.org/fr/tutorial/tuto4.php (exécution)
Bon courage.
3 avril 2008 à 16:33
1 Peut-on insérer ce script comportant des donnée issues d'un base de donnée et disposée nom pas sous forme de tableau mais sous forme de colonne (comme les articles de presse)?
2 Comment la position des entetes de colonne du tableau sont-elles reconnus. (probleme de chevauchement dans les nom des en-tetes de colonne)?
Merci pour ta réponse
Cordialement
13 juin 2007 à 10:54
j'ai essayé ce code à l'identique en le nommant gen_pdf.php j'obtient l'erreur suivante :
Warning: Cannot modify header information - headers already sent by (output started at H:\serveur web\ZMWS\_web.zmwsc\conference\gen_pdf.php:11) in H:\serveur web\ZMWS\_web.zmwsc\conference\fpdf.php on line 1022
FPDF error: Some data has already been output to browser, can't send PDF file.
une idée sur la résolution de ce problème ?
merci
26 avril 2007 à 07:10
Warning: main(fpdf.php) [function.main]: failed to open stream: No such file or directory in c:\wamp\www\recherche_resultat_impression.php on line 5
Fatal error: main() [function.require]: Failed opening required 'fpdf.php' (include_path='.;C:\php5\pear') in c:\wamp\www\recherche_resultat_impression.php on line 5
25 avril 2007 à 22:46
Bonne chance.
25 avril 2007 à 22:38
Voilà j'essais d'afficher dans un tableau PDF avec FPDF le resultat d'une requete de recherche mais j'ai le messages d'erreur : FPDF error: Some data has already been output, can't send PDF file.
ma requete est bonne. Je vous passe mon code
Code :
<?php define('FPDF_FONTPATH','font/'); include("fond.php"); require("connect_atelier.php"); require('fpdf.php'); $req=$_POST['passage_req']; $pdf=new FPDF('P','cm','A4'); //Titres des colonnes $header=array('Nb','Winpark','Matériel','Modèle','Numéro','Unité','Utilisation','Nom CSAV'); $pdf->SetFont('Arial','B',14); $pdf->AddPage(); $pdf->SetFillColor(96,96,96); $pdf->SetTextColor(255,255,255); $resultat=mysql_query(stripslashes($req),$connect)or die ('
<center>La reponse ne contient aucun enregistrement
ou
une erreur est survenue qui est : '.mysql_error().'</center>' ); $pdf->SetXY(3,3); for($i=0;$i<sizeof($header);$i++) $pdf->cell(5,1,$header[$i],1,0,'C',1); $pdf->SetFillColor(0xdd,0xdd,0xdd); $pdf->SetTextColor(0,0,0); $pdf->SetFont('Arial','',10); $pdf->SetXY(8,$pdf->GetY()+1); $fond=0; $j=1; while($row=mysql_fetch_array($resultat)) { $pdf->cell(5,0.7,$j,1,0,'C',$fond); $j=$j+1; $pdf->cell(5,0.7,$row['winpark'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['materiel'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['modele'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['numero'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['unite'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['utilisation'],1,0,'C',$fond); $pdf->cell(5,0.7,$row['nom_csav'],1,0,'C',$fond); $pdf->SetXY(3,$pdf->GetY()+0.7); $fond=!$fond; } $pdf->output(); ?>
Si qq'un peut m'aider
Merci d'avance
28 sept. 2006 à 16:38
voila je l'avais deja mis cette classe, pour la lecture de bdd, ca se passe bien a part une chose, les espaces.
Si dans ma bdd, j'ai "208 route dici" --> quand je lis dans le pdf il me saute le texte apres le premier espace --> "208" et plus rien.
Est ce que quelqu'un aurait la solution s'il vous plait merci ;-)
6 juil. 2006 à 12:12
Y a pas une fonction de ce type dans le forum ?
6 juil. 2006 à 12:10
Je cherche moi la possibilité de créer à la volée depuis un formulaire. Je pense que la je suis sur la bonne voie.
Pour Cyril, autre méthode que créer une copie de la librairie dans tous les dossiers, tu peux également l'appeler depuis ta page. Cf si elle se trouve dans un dossier patent tu fais <quote> require('dossier/fpdf.php'); </quote> au lieu de <quote> require('fpdf.php');
</quote>
Bonne journée à tout le monde
25 juin 2006 à 17:35
31 mai 2006 à 08:13
pour la librairie FPDF il faut le mettre dans chaque sous dossier ou tu va l'utiliser, il faut obligatoirement que la page qui va te generer ta page pdf soir exclusivement dedier au pdf, pas de print pas d'echos pas dimage sauf avec les commande du FPDF.
parcontre montre nous tton bout de code qui va generer ton pdf pour que lon puisse savoir ou est ton bleme.
a+
cyril
31 mai 2006 à 07:58
Merci pour votre Code-Source, lorsque que j'ajoute ce bout de code dans ma page ce message d'erreur vient lors de l'execution :
-----------------------------------------erreur--------------------------------------
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\inetpub\wwwroot\N_consecutifs\utilisateur\attr_auto.php3 on line 151
Warning: Cannot modify header information - headers already sent by (output started at c:\inetpub\wwwroot\N_consecutifs\utilisateur\attr_auto.php3:151) in c:\inetpub\wwwroot\N_consecutifs\utilisateur\fpdf.php on line 1022
FPDF error: Some data has already been output to browser, can't send PDF file
------------------------------------------------------------------------------------
Je connais très mal la fonction PDF dans PHP donc j'ai aucune idée de quoi cela peut venir, et pour la librairie FPDF je suis pas sur de l'avoir installé correctement, j'ai juste décompresser les fichiers downloader sur le site officiel, dans le même dossier ou se trouve ma page dans laquelle j'ai besoin de générer un PDF.
Je me demandais en fait si on doit vraiment ajouter ce bout de code dans notre page, ou si il faut plutot créer une page indépendente nommée par exemple "pdf.php" et ensuite l'appeler depuis l'autre page mais la je savais pas comment transmettre les valeur des variables... enfin j'aurai besoin de quelques infos parce que je nage un peu en eaux troubles la...
D'avance merci beaucoup !
Loïc
5 mars 2006 à 14:55
Peut être que ça marche pas chez toi parce qu'il ya un problème sur le résultat de ta requête.
Pour l'explication de la ligne: $pdf->SetXY(3,$pdf->GetY()+0.7);
elle permet de positionner le curseurà la colonne 3 (pour l'aligner avec le début du Tableau et il prends la valeur ou on se trouve sur les lignes(GetY();) puisque les lignes s'incrémente et enfin concernant le 0.7 c'est la hauteur d'une Cellule du Tableau ($pdf->cell(5,0.7,$row['nom'],1,0,'C',$fond);).
J'espère que j'ai pu répondre à ta question comme il le faut,sinon tu pourra toujours me contacter par mail pour parler d'avantage sur la chose.
Cordialement Mehdi.
http://ntic.blogspirit.com
4 mars 2006 à 11:26
4 mars 2006 à 11:10
jai tester ton code il est vraiment pa mal et tres comprehensible, par contre j'ai un petit soucis; lorsque le pdf est généré il ne maffiche que le libéllé de chaque colonne mais pas les données de la requete et aussi jaimerais savoir comment interpréter cette ligne de code "$pdf->SetXY(3,$pdf->GetY()+0.7); "
merco
28 févr. 2006 à 02:37
3 janv. 2006 à 22:16
28 oct. 2005 à 02:24
j'ai bien tester ton code, il est super super, il m'a donnée une nouvelle idée sur les possibilité de PHP.
la librairie FPDF v 1.53 est disponible avec un Manuel de référence, un FAQ et un tutorial+(Doc, Historique).
j'ai un peut tester la procedure c'est tout a fait pratiquable, Mais c'est purement Orienté Objet.
il suffit de maitriser les méthode de la class FPDF et de les appeler corectement.
il y'a deux superbe méthode :"Fouther" et "Header" pour haut et pied de page(nbr page,titre...tous ça au tutoriel).
Merci.
Merci également pour ton code simple et clair.
ouadou44@hotmail.com
6 oct. 2005 à 07:52
5 oct. 2005 à 13:52
comment faire?
5 oct. 2005 à 13:22
8/10
5 oct. 2005 à 09:33
5 oct. 2005 à 09:20
sous wamp et mysql
ou puis je trouver d'autre librairie
pit
5 oct. 2005 à 08:56
http://www.fpdf.org/
;-)
Puisque tu es débutant, précisons que cette librairie n'étant pas incluse dans le package de base de php, il y a peu de chance que ton hébergeur la possède, si tu es en mutualisé. (sinon, tout peut s'arranger)
5 oct. 2005 à 08:12
je debute evidemment mais ma question somme toute logique, ou trouve t on la librairie fpdf
merci
Pit