FPDF et BDD
Résolu
Bonjour,
Je débute dans FPDF et j'ai un petit soucis pour intégrer des valeurs de ma base de données sur mon pdf créée.
Et cela me donne:
Fatal error: Call to a member function fetch() on a non-object in /var/www/elsy-boutique.fr/htdocs/facture.php on line 54
(la ligne 54 correspond à cette ligne:
$donnees = $reponse->fetch(); )
Pourriez vous m'aider ?
Je débute dans FPDF et j'ai un petit soucis pour intégrer des valeurs de ma base de données sur mon pdf créée.
<?php
session_start;
require_once('includes/configurations.php'); // connection BDD
require('fpdf.php');
$pdf=new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
$i = $_SESSION['id_client'] ;
$n = htmlspecialchars($_GET['n']) ;
$reponse = $bdd->query('SELECT id_produit FROM produit ORDER BY id_produit DESC LIMIT 0, 1 ');
$donnees = $reponse->fetch();
$max = $donnees['id_produit'];
$reponse->closeCursor();
$pdf->Cell(0,10,'...',0,0,'R');
$pdf->Output();
?>
Et cela me donne:
Fatal error: Call to a member function fetch() on a non-object in /var/www/elsy-boutique.fr/htdocs/facture.php on line 54
(la ligne 54 correspond à cette ligne:
$donnees = $reponse->fetch(); )
Pourriez vous m'aider ?
3 réponses
-
Salut, je connais pas trop l'utilité de configuration.php mais $bdd ne semble pas initialisé, il faudrait peut etre déclarer un objet PDO a un moment.
-
(j'ai marqué résolu mais je me suis trompé ! dsl)
La seconde ligne de mon script sert déja a me connecter a ma base de donnée par PDO, c'est juste un fichier à part.
le contenu de configurations.php c'est ça:<?php try { $bdd = new PDO('mysql:host=**********;dbname='**********', '**********', '**********'); } catch (Exception $e) { die('Erreur: '. $e->getMessage()); } ?>
Et puis sur toutes mes autres pages, la fonction ceci marche:$reponse = $bdd->query('SELECT id_produit FROM produit ORDER BY id_produit DESC LIMIT 0, 1 '); $donnees = $reponse->fetch(); $max = $donnees['id_produit']; $reponse->closeCursor();
sauf quand j'utilise fpdf -
Mais apparement le souci vient tout de même de là, il ne reconnait pas $bdd comme étant un objet PDO, donc juste pour tester, tu pourrais peut etre déclarer un nouvel objet PDO dans ce fichier.