Bonjour,
Lorsque je fais une authentification je peux générer mon fichier PDF.
Lorsque je ne suis pas authentifié j’obtiens une erreur interne au moment de l'affichage du PDF.
En décomposant la composition de la création du PDF en format HTML tout fonctionne.
Comment déclarer dans CakePHP d'autoriser l'utilisation de la génération de HTML2PDF sans être authentifié.
D'avance Merci
ben dans le controller et dans l'action correspondant à la génération de pdf, rajoute
$this->Auth->allow();
Merci pour la réponse, bien sur c'est bien la première étape si l'on ne veut pas une authentification sur une fonction.
Mais dans le cas présent le problème n'est pas à ce niveau.
Le problème se situe à la génération même du fichier PDF dans le navigateur.
J'ai trouvé une solution. Peut être n'est elle pas la meilleur, donc si quelqu'un à une meilleur proposition je suis preneur.
Ci dessous un exemple de mon fichier qui génère le fichier PDF.
<?php
// Construction de la variable $content
ob_start();
?>
...
j'ai enlevé les informations HTML du document
...
<?php
// Fin de la constrution de la variable $content
$content=ob_get_clean();
// Construction du fichier PDF
App::import('Vendor', 'html2pdf/html2pdf');
try{
$pdf = new HTML2PDF('L', 'A4', 'fr');
$pdf->pdf->SetDisplayMode('fullpage');
$pdf->writeHTML($content);
$pdf->Output('resa.pdf');
$pdf->process(Router::url('/', true)); <-- En rajoutant cette ligne le fichier PDF est bien généré
}catch(HTML2PDF_exception $e){
die($e);
}
?>
Si cela peux aider.