使用dompdf和codeigniter的问题

时间:2012-05-09 18:28:34

标签: php codeigniter dompdf

我已经开始尝试使用codeigniter和pdfs。我正在使用两者的最新版本。出于某种原因,我在尝试渲染pdfs时遇到此错误:

Warning: require_once(C:\Users\Manfred\Dropbox\Web\Alodu\application\helpers\dompdf/include/ci_exceptions.cls.php) [function.require-once]: failed to open stream: No such file or directory in C:\Users\Manfred\Dropbox\Web\Alodu\application\helpers\dompdf\dompdf_config.inc.php on line 208

Fatal error: require_once() [function.require]: Failed opening required 'C:\Users\Manfred\Dropbox\Web\Alodu\application\helpers\dompdf/include/ci_exceptions.cls.php' (include_path='.;C:\php\pear') in C:\Users\Manfred\Dropbox\Web\Alodu\application\helpers\dompdf\dompdf_config.inc.php on line 208

使用的代码是:

function pdf()
    {
         $this->load->helper(array('dompdf', 'file'));
         // page info here, db calls, etc.     

         /*
         $data=array(
         "$title"=>"Hello!",
         "$test_questions"=>"1,2,3,4",
         );
         */

        $data['test_questions']= "hello";


         $html = $this->load->view('pdf/test_ibdp', $data, true);

         $filename="Test".$data['test_questions'];

         pdf_create($html, $filename);
         write_file('name', $data);

    }   

帮助者:

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
function pdf_create($html, $filename, $stream=TRUE) 
{
    require_once("dompdf/dompdf_config.inc.php");

    $dompdf = new DOMPDF();
    $dompdf->load_html($html);
    $dompdf->set_paper("a4", "portrait" );
    $dompdf->render();
    $dompdf->stream($filename . ".pdf");
}
?>  

和视图(纯HTML)

<html>
<head>
<title>Hello!</title>
</head>
<body>
    <h1>HelloAgain</h1>
</body>
</html>

有什么建议吗?我不是那种经验丰富的PHP,我很困惑。我刚刚重新下载了这个库,我试着通过剥离代码中的附加内容来保持它非常简单。似乎没什么用。任何帮助都会很棒:)

4 个答案:

答案 0 :(得分:5)

这是一个类自动加载器问题。你使用哪个版本的DOMPDF?我认为dompdf 0.5在集成到像CI这样的框架中时会出现问题。 0.6版本不再存在这个问题,如果问题仍然存在,请写

define("DOMPDF_AUTOLOAD_PREPEND", true)
dompdf_config.custom.inc.php中的

答案 1 :(得分:0)

更正dompdf文件路径。同样删除这行代码:

write_file('name', $data);

以下一行就足够了:

pdf_create($html, $filename);

答案 2 :(得分:0)

错误是说下面的路径不正确。重新检查路径

require_once("dompdf/dompdf_config.inc.php");

答案 3 :(得分:0)

该文件的路径不正确。

C:\用户\曼弗雷德\收存箱\网络\ Alodu \应用\助手\ DOMPDF / {包括{1}} ci_exceptions.cls.php

您可以使用DIRECTORY_SEPARATOR