Bonjour a tous,

J'ai un petit soucis avec le pluging HTML2PDF.
En effet je souhaite afficher un petit texte pour ma phase de test MAIS lorque j'utilise la fonction Output() la chargement du document échoue.

Voici le code

<?php
$data = serialize(file_get_contents(ROOT.DS.'config/datas.txt'));
ob_start();
?>

<page>
    TESTT
</page>

<?php
$content = ob_get_clean();

require(ROOT.DS.'config/html2pdf/html2pdf.class.php');
try{
    $pdf= new HTML2PDF('P','A4','fr','true','UTF-8',array(5,5,5,8));
    $pdf->pdf->SetDisplayMode('fullpage');
    $pdf->writeHTML($content);

    $pdf->Output('305.pdf');
}catch(HTML2PDF_exception $e){
    die($e);
}
?>

Quelqu'un a une idée ? :)
Merci

13 réponses


HoustonB
Auteur
Réponse acceptée

Oui acrobat bien installer et non , toujours rien :(
A croire que je suis malchanceux ...

EDIT: CA MARCCCCCHHHHE il fallais mettre ob_end_clean()

Bonsoir,

Si vous commenter le $data, ça fonctionne ?

HoustonB
Auteur

Bonsoir,
Non toujours pas

2 possibilités, comme le suppose Carouge10 en commentant data, tu supprime une erreur de redéclration de header, donc un soucis avec le serialize, ou alors il y a un erreur aprés obstart, mais dans tous les cas il serai bien de nous fournir le message d'erreur afin de nous permettre de te guider.

Bon courage.

Flo

edit: plus rapide que moi pour répondre, oublions la première possibilité, quoi que

HoustonB
Auteur

le soucis c'est que je n'ai aucun message d'erreur :/

Vous pouvez simplifier l'instantiation de pdftohtml par

$pdf = new HTML2PDF('P', 'A4', 'fr');

car le reste sont les éléments par défaut.

Quand vous dites que le chargement échoue, il y a un meesage d'erreur, une page blanche ?

Le code que vous nous avez transmis est complet ou c'est un extrait ?

HoustonB
Auteur

le code est complet
et voici ce que le navigateur m'affiche

Puis-je avoir le code complet.

Ne fermer pas la dernière balise php de votre document, car cela vous évitera les problèmes avec du code html qui pourrait se trouver après cette balise.
La classe htmltopdf est-elle bien chargé ?

HoustonB
Auteur

Le code est complet :/ j'ai seulement ceci sur mon fichier php et la classe est bien chargé

le code source de la page est :

si ça peut aider ...

Puisque votre code est complet alors il vous manque la déclaration des constantes ROOT et DS.

HoustonB
Auteur

J'ai utiliser la déclaration de ROOT et DS dans le tutoriel pour créer un site web

define('WEBROOT', dirname(__FILE__));
define('ROOT', dirname(WEBROOT));
define('DS', DIRECTORY_SEPARATOR);
define('CORE', ROOT.DS.'core');
define('BASE_URL', dirname(dirname($_SERVER['SCRIPT_NAME'])));

De plus la classe est bien charger car j'ai essayer la fonction $pdf->setModeDebug(); et elle fonctionne

Acrobat reader est bien installé ?
Sinon essayé ceci :

$content = ob_get_contents(); // récupère tout le contenu depuis ob_start()
    // ou $content = ob_get_clean() ça fonctionne également;
    $pdf = new HTML2PDF('P', 'A4', 'fr');
    $pdf->pdf->SetDisplayMode('fullpage');
    $pdf->writeHTML($content);
     ob_clean();
    $pdf->Output('test.pdf');

Bizarre, perso ça marche sans.
Enfin content que le problème soit résolu.