dompdf не может создать pdf-файл со страницы моего веб-сайта. Тем не менее, я сохранил страницу и загрузил ее как простой статический html-файл, и он сработал!
Итак, я не знаю, связана ли проблема с URL-адресом или что-то еще. Это ошибка, которую я получаю:
Предупреждение: require_once (/home/o110334/public_html/dompdf/include/firephp.cls.php) [function.require-once]: не удалось открыть поток: нет такого файла или каталога в / home / o110334 / public_html / dompdf / dompdf_config .inc.php on line 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");
DOMPDF пытается использовать все виды вещей / eval при работе на локальном компьютере, вам лучше попробовать:
1) (предоставленный, длинный путь) запроса HTML по http:
$dompdf->load_html_file('http://yourdomain.ext/'.$file);
2) Не позволяйте 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(); ?>