Comment afficher le contenu de FPDF par dreamweaver

Résolu/Fermé
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022 - 12 févr. 2020 à 11:05
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022 - 17 févr. 2020 à 12:18
Bonjour, je suis debutant avec FPDF, j'ai conçu un petit code, le voici:

<?php
include("connexion.php");
require('fpdf.php'); 
// En-tête
function Header()
{
// Police Arial gras 15
    $this->SetFont('Arial','B',15);
    // Décalage à droite
    $this->Cell(80);
    // Titre
    $this->Cell(30,10,'Titre',1,0,'C');
    // Saut de ligne
    $this->Ln(20);
}
$pdf = new FPDF('L','cm,','A4');
$pdf->AddPage();
$pdf->SetFont('Arial','B',12);
$pdf->Cell(40,10,'Hello World !');
$pdf->Cell(60,10,'Powered by FPDF.',0,1,'C');
$pdf->Output();
?>



J'ai inserer le dossier pdf-php sur mon serveur Mamp, dans le but de permettre que mon contenu PDF soit, afficher( voilà pourquoi j'ai mis include("connexion.php");) le problème est que lorsque je lance mon fichier index.php depuis MAMP, mon index ne s'affiche pas, le navigateur m'écrit:

"Cette page ne fonctionne pasImpossible de traiter cette demande via localhost à l'heure actuelle.
HTTP ERROR 500"

pourtant j'ai bien configurer mon serveur, quelqu'un peut-il m'aider? comment faire pour faire afficher le contenu de ma page index? ya t-il un procédé pour FPDF où c'est le même procédé pour tout site en PHP configurer sous dreamwear?

7 réponses

jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
12 févr. 2020 à 11:56
Bonjour,

Une erreur 500 indique un souci sur le code côté serveur.

Commence par activer l'affichage des erreurs php
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code


Remplace ton "include" et ton "require" par des require_once

Dans ton code tu utilises des $this->
... mais ça ne fait référence à rien... tu sembles avoir copier/coller la fonction Header .. d'on on ne sait où.... mais vu que tu ne l'utilises pas... tu peux la retirer de ton code.




0
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022
12 févr. 2020 à 12:58
Oui, c'est du copie/coller car je suis entrain d'apprendre FPDF, j'ai modifié selon vos propositions voici le code :


<?php
require_once("connexion.php");
//début de ton fichier php .... ça veut dire .. DEBUT !!!:
error_reporting ( E_ALL );
ini_set ( 'display_errors', TRUE );
ini_set ( 'display_startup_errors', TRUE );

require_once('fpdf.php'); 
// En-tête
function Header()
{
    $this->SetFont('Arial','B',15);
    // Décalage à droite
    $this->Cell(80);
    $this->Cell(30,10,'Titre',1,0,'C');
    // Saut de ligne
    $this->Ln(20);
}
$pdf = new FPDF('L','cm,','A4');
$pdf->AddPage();
$pdf->SetFont('Arial','B',12);
$pdf->Cell(40,10,'Hello World !');
$pdf->Cell(60,10,'Powered by FPDF.',0,1,'C');
$pdf->Output();
?>


Mais j'ai toujours le même resultat, même erreur
0
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
12 févr. 2020 à 13:08
Qu'est-ce que tu ne comprends pas dans le commentaire où il est indiqué début de ton code PHP ?
c'est donc à placer au tout début de ton code et donc ton require doit être après...

je t'ai également parlé de ta fonction header le dollar ce qui est à l'intérieur ne peut pas fonctionner... Retire ta fonction et d'heure de ton code et teste à nouveau
0
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022
17 févr. 2020 à 10:34
Bonjour, (Je signale que je suis un vrai debutant avec FPDF) j'essaie d'appliqué tes consignes, voici le code:


<?php
//début de ton fichier php .... ça veut dire .. DEBUT !!!:
error_reporting ( E_ALL );
ini_set ( 'display_errors', TRUE );
ini_set ( 'display_startup_errors', TRUE );
require_once("connexion.php");
require_once('fpdf.php'); 
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World !');
$pdf->Output();
?>


quand j'éxécute le navigateur me signale une erreur au au niveau du fichier fpdf.php
voici l'erreur qui m'est signalé:

" Fatal error: Uncaught Exception: FPDF error: Some data has already been output, can't send PDF file in /Applications/MAMP/htdocs/pdf-php/fpdf.php:271 Stack trace: #0 /Applications/MAMP/htdocs/pdf-php/fpdf.php(1063): FPDF->Error('Some data has a...') #1 /Applications/MAMP/htdocs/pdf-php/fpdf.php(999): FPDF->_checkoutput() #2 /Applications/MAMP/htdocs/pdf-php/index.php(12): FPDF->Output() #3 {main} thrown in /Applications/MAMP/htdocs/pdf-php/fpdf.php on line 271"


voici la ligne 271 du code du fichier fpdf:

 function Error($msg)
{
	// Fatal error
	throw new Exception('FPDF error: '.$msg);
}


fpdf c'est le fichier qui vient avec le dossier fpdf, je n'arrive pas à comprendre comment il peut contenir une erreur et je ne comprend pas cette erreur, quelqu'un peut-il m'aider
0
yg_be Messages postés 22692 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 16 avril 2024 1 471
Modifié le 17 févr. 2020 à 11:15
moi j'essaierais
$pdf->Output('D','test.pdf');

que contient connexion.php?
as-tu essayé hors de dreamweaver?
0
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022
17 févr. 2020 à 11:31
Fichier connexion contient le code PHP de la connexion à la base de donnée

C'est quoi le fichier test.pdf?

comment puis-je essayé hors dreamweaver?
0
yg_be Messages postés 22692 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 16 avril 2024 1 471
17 févr. 2020 à 12:00
tu n'utilises pas de base de données, il n'est donc pas utile de faire appel à connexion.php.
test.pdf n'est pas un fichier, c'est juste un nom envoyé au navigateur.
je suggère, pour tester, de replacer la ligne 13 par la ligne que je propose.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
17 févr. 2020 à 11:41
Bonjour,

Le message d'erreur
FPDF error: Some data has already been output

indique simplement que tu as déjà envoyer des données au navigateur .....

Peux tu nous montrer l' INTEGRALITE de ton fichier ?
N'y a tu pas mis du code html avant ton code php ? (si oui.. faut le retirer )

Peux tu également t'assurer que ton fichier est bien encodé en utf8 sans bom
Voir chapitre 1 de ce lien :
https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8
0
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022
17 févr. 2020 à 11:54
Non, pas du tout, je n'ai pas mis de code html dans mon code php, le voici:

<?php
//début de ton fichier php .... ça veut dire .. DEBUT !!!:
error_reporting ( E_ALL );
ini_set ( 'display_errors', TRUE );
ini_set ( 'display_startup_errors', TRUE );
require_once("connexion.php");
require_once('fpdf.php'); 
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World !');
$pdf->Output();
?>

0
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
17 févr. 2020 à 12:12
Et que contient ton fichier require_once("connexion.php"); ?

Et comme tu le dis yg_be, vu que pour l'instant tu n'utilises pas ta bdd, tu peux retirer cette ligne le temps de tes tests.

Tu n'as pas non-plus répondu à ma question concernant l'encodage de ton fichier.
Merci de nous fournir une capture écran de la vérification.
0
modemo2018 Messages postés 231 Date d'inscription vendredi 15 novembre 2019 Statut Membre Dernière intervention 13 octobre 2022
17 févr. 2020 à 12:18
j'ai enlévé le require_once("connexion.php");, et ça à marché enfin, merci beaucoup pour l'aide
0