使用jquery ajax生成PDF

时间:2013-10-06 17:49:05

标签: jquery ajax pdf phalcon

我正在使用phalcon php框架。我想将div标签中显示的数据(它是搜索的结果)发送到控制器功能,控制器将生成pdf文件。但是,pdf文件没有生成。 以下是我的观点:

       var imenica = "Ja se zovem Nedim Omerbegovic";
       $.ajax({
        url: '<?php echo  $this->url->get("test/creatingpdf");?>',
        type: 'POST',
        dataType: '',
        data: {imenica:imenica},
        success: function(data){
            alert(data);
            } ,
            error: function(){
                alert("Greska");
            }

    });


    });

这是控制器的代码:

    public function creatingpdfAction(){
    $this->view->disable();
    $string =$_POST['imenica'];
    $this->view->setVars(array('ime'=>$string));

          $loader = new \Phalcon\Loader();
    $loader->registerClasses(
     array(
    "mpdf"=> "C:/wamp/www/phalcon1/mpdf/mpdf.php"
 )
 );


    $loader->register();
    //$string = "Ja se zovem Nedim Omerbegovic";
    $view = new \Phalcon\Mvc\View();
    $view->setViewsDir('../app/views/');
    $cont = $this->view->getRender('test', 'creatingpdf');
    //generisanje pdf dokumenta
    $pdf = new mpdf();
    $pdf->WriteHTML($cont, 2);
    $br = rand(0,100000);
    $ispis = "Pobjeda Rudet-Izvjestaj-".$br;
    $pdf->Output($ispis, 'I');
  }

如何以这种方式查看生成的pdf文件

1 个答案:

答案 0 :(得分:0)

查看TCPDF @ http://www.tcpdf.org/以获取绝对适用于Phalcon的PDF库。虽然这不是Phalcon特定的问题(因为Phalcon没有原生PDF库),你当然可以将它与Phalcon集成。如果你想这样做,你可以将TCPDF库注册为Phalcon的服务,并将库包含在自动加载器中,就像使用任何其他服务一样。

示例:

$di->set('tcpdf', function() {
    $tcpdf = new TCPDF();

    return $tcpdf;
});

将使您的图书馆可以通过

访问
$this->tcpdf

在扩展核心Phalcon功能或

的对象中
\Phalcon\DI::getDefault()->getTcpdf();

静态。