Bonjour,

je suis entrain d'essayer d'utiliser html2pdf et je rencontre un petit soucis:
lorsque je fait un debug de mon action dans mon controller je vois bien les donnees, mais dès que je veux les inserer dans ma vue je n'ai plus rien, quelqu'un saurait-il où je me trompe?

voici mon controller:

public function agence_pdf($id=null){
        if($id){
                $bdc = $this->Bdc->find('first', array(
                'conditions' => array('Bdc.agence_id' => $this->Auth->user('agence_id')),
                'contain' => array('Agence','Vehicule')
                ));
            }
            $this->set(compact('bdcs', $bdc));

        //debug($bdc);
        //die();
        //pour éviter les outputs du debug de cake
        Configure::write('debug',0);
        //la solution depuis cakephp 2
        $this->response->type('pdf');
        $this->layout='pdf';

    }

et la vue:

<?php
// Construction de la variable $content
ob_start();
?>
<style type="text/css">
    table{width:100%; color:#717375;}
</style>
<page backtop="15mm" backleft="10mm" backright="10mm" backbottom="15mm">
        <table>
            <tbody>

                    <?php foreach ($bdcs as $k => $bdc): ?>
                    <tr>
                        <td><?= $bdc'Bdc']'id']; ?> / <?= $bdc'Agence']'name']; ?></td>

                    </tr>
                    <?php endforeach ?>

            </tbody>

        </table>
</page>
<?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('P', 'A4', 'fr');
$pdf->pdf->SetDisplayMode('fullpage');
$pdf->writeHTML($content);
$pdf->Output('bdc.pdf');
}catch(HTML2PDF_exception $e){
die($e);
}
?>

merci par avance de votre aide.

Gilles

3 réponses


Hey coucou,

Il y a eu quelques réponses pour html2pdf.

N'hésites pas à utiliser la fonction rechcerche ;)

ici par exemple

gilles40
Auteur

Bonjour coloo,

j'ai déja regarder tout ce que j'ai pu trouver sur le sujet mais je me demandes si je n ai pas un truc qui cloche dans le code de l'action ou dans la vue, car lorsque je mets du texte en dur cela fonctionne.

Désolé, je n'ai jamais utilisé cette fonctionnalité, je laisse ça à d'autre =)