Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 17-04-2013 15:30:22

roswellenshort
Membre
Date d'inscription: 06-09-2012
Messages: 12

[Résolu] Problème bibliothèque FPDF

Bonjour,

Je créé un système d'envoi de messages, mises à jour dans une base de données en me basant sur le Zend Framework 1.11.11, en utilisant le pattern MVC. Tout fonctionne, le moteur, les requêtes etc. On m'a demandé d'ajouter un module de création de PDF (pour pouvoir sortir à la demande la liste des tickets actifs par exemple). Pour cela, j'ai donc inclus la librairie fpdf, j'ai créé un contrôleur pdfcontroller, et une classe mypdf pour "driver" tout ça.
Sauf que je me retrouve à l'appel de la page avec un message d'erreur qui est le suivant :

Notice: Undefined property: MyPdf::$titre in /www/htdocs/InfoNaut/application/models/MyPdf.php on line 11 FPDF error: Some data has already been output, can't send PDF file

voici l'extrait du code de l'index.php, pour préciser la localisation de la librairie

Code:

defined('LIBRARY_PATH')
    || define('LIBRARY_PATH', realpath(dirname(__FILE__) . '/../library'));

Le PdfController :

Code:

<?php
//appel des modeles necessaires
require_once (APPLICATION_PATH."/models/Tavurnav.php");
require_once(APPLICATION_PATH."/models/Tavurnavlocal.php");
require_once(APPLICATION_PATH."/models/Tavirade.php");
require_once(APPLICATION_PATH."/models/Tavinav.php");
//appel librairie fpdf
require_once (LIBRARY_PATH."/fpdf17/fpdf.php");

class PdfController extends Zend_Controller_Action
{
public function init()
    {
        }

    public function indexAction () {
          $this->view->message = "contrôleur par défaut";
        
        }
    
    public function afficheavurnavAction()
    {
        //TODO
        }

La classe MyPdf, localisée avec les modèles :

Code:

<?php
require_once (LIBRARY_PATH."/fpdf17/fpdf.php");
class MyPdf extends FPDF
{
    public function Header()
    {
        
        $this->SetFont('Times','B',18);
        $this->Cell(80);
        $this->Cell(30,10,$this->titre,0,0,'C');
        $this->Ln();
        $this->Cell(30,10,"Mon sous titre",1,0,'C');
        $this->Ln();
    }
}

Et pour finir, la page phtml d'appel du pdf (pour le moment, juste un pdf vide avec un titre et un sous-titre)

Code:

require_once(APPLICATION_PATH."/models/MyPdf.php");

$pdf = new MyPdf();
$pdf->AddPage();
$pdf->titre = "Titre test";
$pdf->Output();

Le problème se situe visiblement dans la classe MyPdf sur le $this->titre. En effet, lorsque je rentre un titre en dur $this->Cell(30,10,$"un titre",0,0,'C'); par exemple, ça fonctionne bien.
Merci pour l'aide apportée

Dernière modification par roswellenshort (18-04-2013 16:05:13)

Hors ligne

 

#2 18-04-2013 16:06:01

roswellenshort
Membre
Date d'inscription: 06-09-2012
Messages: 12

Re: [Résolu] Problème bibliothèque FPDF

Erreur simple. Le "$pdf->AddPage();" avant le "$pdf->titre = "Titre test";" c'est mal. Dans le bon ordre, c'est mieux wink

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages