dompdf: загрузка файлов HTML для рендеринга, не работает

dompdf не может генерировать PDF от страницы моего веб-сайта. Однако я сохранил страницу и загрузил ее как простой статический файл HTML, и она работала!

Так, я не знаю, ли проблема с URL или чем-то еще.. это - ошибка, которую я получаю:

Предупреждение: require_once (/home/o110334/public_html/dompdf/include/firephp.cls.php) [function.require-после-того-как]: не удалось открыть поток: Никакой такой файл или каталог в/home/o110334/public_html/dompdf/dompdf_config.inc.php на строке 194

Фатальная ошибка: require_once () [function.require]: Неудавшееся открытие потребовало '/home/o110334/public_html/dompdf/include/firephp.cls.php' (include_path = '.:/usr/lib/php:/usr/local/lib/php') в/home/o110334/public_html/dompdf/dompdf_config.inc.php на строке 194

Это - код:

$file = "admin/store/orders/45/invoice/print"; // doesn't work
//$file = "invoice_sample2.html"; //it works (same web page, but stored in a html file)

$dompdf = new DOMPDF();
$dompdf->load_html_file($file);
$dompdf->render();
$dompdf->stream("sample.pdf");
5
задан Rup 11 September 2012 в 10:39
поделиться

1 ответ

DOMPDF пробует всевозможные вещи / eval при локальном запуске, вам лучше попробовать:

1) (разрешенное, долгое путешествие) запроса HTML с помощью http:

$dompdf->load_html_file('http://yourdomain.ext/'.$file);

2) Дон ' t позволить DOMPDF eval , но использовать буферизацию вывода и позволить DOMPDF загружать результирующую строку HTML.

<?php
    ob_start();
    //be sure this file exists, and works outside of web context etc.)
    require("admin/store/orders/45/invoice/print");
    $dompdf = new DOMPDF();
    $dompdf->load_html(ob_get_clean());
    $dompdf->render();
?>
13
ответ дан 18 December 2019 в 14:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: