IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[FPDF] [FPDF & phoToPDF] Impossible d'afficher mes header/footer dans pages avec tableau


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 6
    Par défaut [FPDF] [FPDF & phoToPDF] Impossible d'afficher mes header/footer dans pages avec tableau
    J'ai posté hier ce message dans le forum phpToPDF,
    mais je me rends compte aujourd'hui que mon problème
    vient peut-être de FPDF.
    Je me permets donc de poser ma question dans ce forum.
    J'espère que ça ne gênera pas.
    Et j'espère surtout, une réponse.
    Je craaaaaaaaaaaaaaaaaaaaque.

    ------------------------
    Bonjour,

    j'ai découvert ce week-end "phpToPDF".
    C'est un programme vraiment formidable.
    Toutefois, j'avoue que les paramètres sont parfois
    obscurs et difficiles à adapter.

    Je n'arrive pas à inclure un HEADER et un FOOTER
    dans mon tableau qui s'étend sur plusieurs pages.

    J'ai beau lire les messages de ce forum
    et m'être beaucoup documenté,
    après trop d'essais, je sèche, cassé, crevé, neurones amorphes.

    Qui pourrait m'expliquer où je faute ?
    Comment faire apparaître ces Header et Flooter ?

    J'utilise le code de création de tableau fourni
    dans la documentation, auquel je rajoute les fonctions
    Header et Flooter, mais rien ne s'affiche.

    Merci pour l'aide éventuelle.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    <?
     
    include("phpToPDF/phpToPDF.php");
     
    class PDF extends FPDF
    {
    //En-tête
    function Header()
    {
        //Logo
        //$this->Image('logo_pb.png',10,8,33);
        //Police Arial gras 15
        $this->SetFont('Arial','B',15);
        //Décalage à droite
        //$this->Cell(10);
        //Titre
        $this->Cell(10,10,'TITRE',0,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');
    }
    }
     
    //
    $PDF=new phpToPDF();
    $PDF->SetFont('Arial','B',10);
    $PDF->AddPage();
    $PDF->Cell(10);
    $PDF->startPageNums();
     
    // Définition des propriétés du tableau.
    //... ça c'est bon
     
    // Définition des propriétés du header du tableau.	
    //... ça c'est bon
     
    // Contenu du header du tableau.	
    //... ça c'est bon
     
    // Définition des propriétés du reste du contenu du tableau.	
    //... ça c'est bon	
     
    // donnees pour tableau
    ... remplissage du tableau
     
    // D'abord le PDF, puis les propriétés globales du tableau. 
    // Ensuite, le header du tableau (propriétés et données) puis le contenu (propriétés et données)
    $PDF->drawTableau($PDF, $proprietesTableau, $proprieteHeader, $contenuHeader, $proprieteContenu, $contenuTableau);
     
    $PDF->Output();
     
    ?>

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 16
    Par défaut
    Salut,

    Voila ce que j'ai fait et ca fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
    include("phpToPDF.php");
    require('fpdf.php');
    ...
    $PDF->drawTableau($PDF, $proprietesTableau1,$proprieteHeader1, $contenuHeader1, $proprieteContenu1, $contenuTableau1);
    }
    $PDF->Output('FA.pdf', "F");
    ?>
    dans phptopdf.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    <?php 
    require('fpdf.php');
    ...
    function Header()
    {
     		$this->Image('logoCR.jpg',10,4,16,10.7,'jpg');
        //Police Arial gras 15
        $this->SetFont('Helvetica','I',8);
        //Décalage
      $this->Cell(16,6,' ','B',0);
    	$xd=$this->GetX();
    	$yd=$this->GetY();
    	  //Titre encadré
        $this->Cell(0,$yd-8,'titre','',0,1,'');
        //Saut de ligne
        $this->Ln(6);
    }
     
     
     
    function Footer()
    {    //Positionnement à 1,5 cm du bas
        $this->SetY(-10);
        //Police Arial italique 8
        $this->SetFont('Arial','I',8);
        //Numéro de page
    		$x=$this->GetX();
    		$y=$this->GetY();
        $this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
     
    }
    ...
    ?>
    si ca peut t'aider ...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 6
    Par défaut
    Bonjour Silvy, merci pour ton aide.

    J'ai essayé ta formule mais ça ne marche pas :

    1- J'ai rajouté
    dans le code de ma page qui crée le PDF.

    2- J'ai rajouté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    function Header()
    {
     		$this->Image('logoCR.jpg',10,4,16,10.7,'jpg');
        //Police Arial gras 15
        $this->SetFont('Helvetica','I',8);
        //Décalage
      $this->Cell(16,6,' ','B',0);
    	$xd=$this->GetX();
    	$yd=$this->GetY();
    	  //Titre encadré
        $this->Cell(0,$yd-8,'titre','',0,1,'');
        //Saut de ligne
        $this->Ln(6);
    }
     
     
     
    function Footer()
    {    //Positionnement à 1,5 cm du bas
        $this->SetY(-10);
        //Police Arial italique 8
        $this->SetFont('Arial','I',8);
        //Numéro de page
    		$x=$this->GetX();
    		$y=$this->GetY();
        $this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
     
    }
    dans la page "phpToPDF.php".

    Mais quand je lance ma page qui crée mon PDF,
    j'ai le message d'erreur suivant :
    Fatal error: Cannot redeclare header() in /homez.19/www/...phpToPDF.php on line 11

    Je ne comprends plus rien.
    J'ai les neurones défoncés à force d'essayer de comprendre, haha.

    Apparemment, je ne peux pas redéclarer le header().
    Donc il faut que je supprime la déclaration vide dans FPDF.php ?
    Je le fais et j'ai un message d'erreur.

    Je deviens fou.

    Comment certains ont réussi à fabriquer un PDF
    avec un header + tableau + footer ???
    Mystère.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 6
    Par défaut
    Bon, allons-y calmement.

    Dans FPDF.php :
    si je remplace
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function Header()
    {
    	//To be implemented in your own inherited class
    }
     
    function Footer()
    {
    	//To be implemented in your own inherited class
    }
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    function Header()
    {
     	$this->Image('logoCR.jpg',10,4,16,10.7,'jpg');
        //Police Arial gras 15
        $this->SetFont('Helvetica','I',8);
        //Décalage
      $this->Cell(16,6,' ','B',0);
    	$xd=$this->GetX();
    	$yd=$this->GetY();
    	  //Titre encadré
        $this->Cell(0,$yd-8,'titre','',0,1,'');
        //Saut de ligne
        $this->Ln(6);
    }
     
     
     
    function Footer()
    {    //Positionnement à 1,5 cm du bas
        $this->SetY(-10);
        //Police Arial italique 8
        $this->SetFont('Arial','I',8);
        //Numéro de page
    		$x=$this->GetX();
    		$y=$this->GetY();
        $this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
     
    }
    J'ai le message d'erreur suivant :
    Warning: getimagesize(logoCR.jpg) [function.getimagesize]: failed to open stream: No such file or directory in /homez.19/lwww/.../phpToPDF/fpdf.php on line 1518
    FPDF error: Missing or incorrect image file: logoCR.jpg


    Par contre si j'enlève :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->Image('logoCR.jpg',10,4,16,10.7,'jpg');
    J'ai bien un HEADER et un FOOTER.

    Seul problème :
    le HEADER affiche juste "titre".
    Comment faire pour le paramétrer ?
    Pour le FOOTER, il affiche bien 1/3, 2/3, 3/3.
    Nickel. Pas besoin de le paramétrer.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 6
    Par défaut
    Bon, j'abandonne pour aujourd'hui.
    Je suis exténué. J'en peux plus.
    À force d'essais, je ne sais même plus ce que j'ai essayé.
    Pfff... 3 jours à bosser là-dessus.
    La perte de temps.
    Le champion des boulets, c'est mouuuuua.

    EDIT :
    J'EN PEUX PLUS DE CE #&6*% DE Cannot redeclare header() !!!!
    J'arrête pas de me le prendre dans la gueule, je comprends pas !!!

    Est-ce que ça vient du fait que ma page PHP
    commence par un session_start(); ?

  6. #6
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    Dites les gars, faut pas jouer aux apprentis sorciers(Harry sors de là) .

    Vous ne devez absolument pas modifier les classes qui vont sont fournies par phpToPdf ou Fpdf, si vous ne savez pas ce que vous faites.

    @Samykool, ton message ti signale que tu n'a pas le droit de redéclarer deux fois la même fonction.

    Montre nous un peu plus de code(la génération de ton Pdf par exemple), pour qu'on puisse mieux t'aider.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 16
    Par défaut
    J'ai le message d'erreur suivant :
    Warning: getimagesize(logoCR.jpg) [function.getimagesize]: failed to open stream: No such file or directory in /homez.19/lwww/.../phpToPDF/fpdf.php on line 1518
    FPDF error: Missing or incorrect image file: logoCR.jpg
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    function Header()
    {
     	$this->Image('logoCR.jpg',10,4,16,10.7,'jpg'); ( j'ai paramétrer mon 
    header pour y faire apparaitre une image, 
    comme tu ne possede pas d'image qui porte ce nom
     phptopdf.php ne peut pas la trouver)
        //Police Arial gras 15
        $this->SetFont('Helvetica','I',8);
        //Décalage
      $this->Cell(16,6,' ','B',0);
    	$xd=$this->GetX();
    	$yd=$this->GetY();
    	  //Titre encadré
        $this->Cell(0,$yd-8,'titre','',0,1,''); Si tu veux que ton header
     affiche autre chose que titre tu dois remplacer ' titre' 
    par ce que tu souhaite voir afficher.
        //Saut de ligne
        $this->Ln(6);
    }
     
     
     
    function Footer()
    {    //Positionnement à 1,5 cm du bas
        $this->SetY(-10);
        //Police Arial italique 8
        $this->SetFont('Arial','I',8);
        //Numéro de page
    		$x=$this->GetX();
    		$y=$this->GetY();
        $this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
    			
    }

  8. #8
    Membre émérite
    Avatar de jc_cornic
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    623
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 623
    Par défaut Chemin
    Salut, dis moi, un doute m'habite, ce ne serait pas tout simplement le chemin de ton image jpg qui n'est pas bon ?
    Le message de ton warning te dit que le fichier proposé n'existe pas...

    Quel est le chemin de ton image par rapport au fichier fpdf.php ???

    ++
    JC

Discussions similaires

  1. impossible d'afficher mes états
    Par djelloharmel dans le forum VB.NET
    Réponses: 3
    Dernier message: 10/12/2012, 11h04
  2. impossible d'afficher mes ImageIcons dans mon .jar
    Par yoann34 dans le forum Composants
    Réponses: 3
    Dernier message: 30/07/2009, 08h09
  3. impossible d'afficher des images png dans mes jsp
    Par redsonic dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 02/03/2009, 22h06
  4. Impossible d'afficher mes formulaire sous Access 2007
    Par bernardus14 dans le forum IHM
    Réponses: 5
    Dernier message: 03/11/2008, 09h30
  5. Réponses: 9
    Dernier message: 20/01/2008, 15h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo