comment sauvegarder le contenu généré par DOMPDF dans un fichier? [fermé]

J'utilise Dompdf pour créer un fichier PDF mais je ne sais pas pourquoi il ne sauvegarde pas le PDF créé sur le serveur.

des idées?

require_once("./pdf/dompdf_config.inc.php");
    $html =
      '<html><body>'.
      '<p>Put your html here, or generate it with your favourite '.
      'templating system.</p>'.
      '</body></html>';

    $dompdf = new DOMPDF();
    $dompdf->load_html($html);
    $dompdf->render();
    file_put_contents('Brochure.pdf', $dompdf->output());
40
demandé sur favo 2012-01-04 05:14:46

3 réponses

je viens d'utiliser dompdf et le code était un peu différent mais ça a marché.

la Voici:

require_once("./pdf/dompdf_config.inc.php");
$files = glob("./pdf/include/*.php");
foreach($files as $file) include_once($file);

$html =
      '<html><body>'.
      '<p>Put your html here, or generate it with your favourite '.
      'templating system.</p>'.
      '</body></html>';

    $dompdf = new DOMPDF();
    $dompdf->load_html($html);
    $dompdf->render();
    $output = $dompdf->output();
    file_put_contents('Brochure.pdf', $output);

La seule différence est que tous les fichiers du répertoire include sont inclus.

autre que ma seule suggestion serait de spécifier un chemin de répertoire complet pour écrire le fichier plutôt que juste le nom du fichier.

66
répondu startupsmith 2012-09-18 01:20:45

j'ai testé votre code et le seul problème que j'ai pu voir était le manque de permission accordée au répertoire dans lequel vous essayez d'écrire le fichier.

donnez la permission" d'écrire " au répertoire dont vous avez besoin pour mettre le fichier. Dans votre cas, c'est le répertoire courant.

utilisez "chmod" sous linux.

ajouter "tout le monde" avec "Écrire" activé dans l'onglet de sécurité du répertoire Si vous êtes dans Windows.

1
répondu Charlie H 2015-09-03 06:34:51
<?php
$content='<table width="100%" border="1">';
$content.='<tr><th>name</th><th>email</th><th>contact</th><th>address</th><th>city</th><th>country</th><th>postcode</th></tr>';
for ($index = 0; $index < 10; $index++) { 
$content.='<tr><td>nadim</td><td>nadim.sheikh.07@gmail.com</td><td>7737033665</td><td>247 dehligate</td><td>udaipur</td><td>india</td><td>313001</td></tr>';
}
$content.='</table>';
//$html = file_get_contents('pdf.php');
if(isset($_POST['pdf'])){
    require_once('./dompdf/dompdf_config.inc.php');
    $dompdf = new DOMPDF;                        
    $dompdf->load_html($content);
    $dompdf->render();
    $dompdf->stream("hello.pdf");
}
?>
<html>
    <body>
        <form action="#" method="post">        
            <button name="pdf" type="submit">export</button>
        <table width="100%" border="1">
           <tr><th>name</th><th>email</th><th>contact</th><th>address</th><th>city</th><th>country</th><th>postcode</th></tr>         
            <?php for ($index = 0; $index < 10; $index++) { ?>
            <tr><td>nadim</td><td>nadim.sheikh.07@gmail.com</td><td>7737033665</td><td>247 dehligate</td><td>udaipur</td><td>india</td><td>313001</td></tr>
            <?php } ?>            
        </table>        
        </form>        
    </body>
</html>
-3
répondu Nadim Sheikh 2015-10-15 09:35:01