Bonjour,
j'ai un petit soucis avec html2pdf.
j'ai développé un site web avec cakephp en localhost sur mon pc windows 8 et j'arrive bien a afficher un pdf simple
mais quand je met en PROD sur un serveur UBUNTU, tout mon site fonctionne nickel SAUF la génération de PDF...
voici ma fonction test() dans mon DossiersController.php
public function test(){
$bonjour = 'Bonjour';
$this->set(compact('bonjour'));
//Configure::write('debug', 0);
$this->layout = null;
$this->response->type('pdf');
}
et voici ma page test.ctp
<?php
App::import('Lib', 'html2pdf/html2pdf');
//header('Content-Disposition: inline');
//header('Content-Type: application/pdf');
ob_clean();
ob_start();
?>
<page>
<h1>TEST</h1>
<?php echo $bonjour; ?>
</page>
<?php
$content = ob_get_clean();
//$content = ob_get_clean();
//$content = utf8_decode($content);
$pdf = new HTML2PDF('P', 'A4', 'fr');
$pdf->pdf->SetDisplayMode('fullpage');
$pdf->writeHTML($content);
$pdf->Output('/files/bi/BON_INTERVENTION_.pdf');
?>
Le message D'ERREUR :
Error: Class 'HTML2PDF' not found
File: /var/www/html/suivitech/app/View/Dossiers/test.ctp
Line: 20
pourtant j'ai bien mon html2pdf dans mon dossier Lib en PROD
mais il n'a pas l'air de trouver la class HTML2PDF
Quelqu'un aurait-il une idée du problème ?
Cordialement,
Maxime
Problème réglé...
il semblerait que le
App::import('Lib', 'html2pdf/html2pdf');
ne fonctionne pas comme il faut sur Ubuntu...
j'ai donc ajouté à la main le chemin d'accès à la class HTML2PDF :
test.ctp
<?php
$content = ob_get_clean();
//$content = ob_get_clean();
//$content = utf8_decode($content);
require_once('/var/www/html/monprojet/app/Lib/html2pdf/html2pdf.php'); // Ligne à ajouter
$pdf = new HTML2PDF('P', 'A4', 'fr');
$pdf->pdf->SetDisplayMode('fullpage');
$pdf->writeHTML($content);
$pdf->Output('/files/bi/BON_INTERVENTION_.pdf');
?>
Voilà ... en espérant que ça puisse aider pour d'autres ;)