在dompdf中的newtab上生成pdf

时间:2013-07-02 07:10:02

标签: php dompdf

有没有办法通过dompdf打开创建的pdf到新的浏览器选项卡? 我试过这些。    当我单击生成按钮(现在是提交按钮)时,控制器动作    在下面给出

控制器:

function generatePdf()
{
  require_once("dompdf/dompdf_config.inc.php");
  $data="this is a sample pdf";
  $dompdf = new DOMPDF();
  $html = $this->load->view('report/modelpdfview', $data, true);
  $dompdf->load_html($html);
  $dompdf->render();
  $dompdf->stream("mypdffile.pdf",array('Attachment'=>0));
  $this->load->view('view/mysiteView', $data);
}

但它在同一位置打开,导致用户失去对网站的控制权。 (我知道浏览器中有后退按钮)

1 个答案:

答案 0 :(得分:0)

创建一个PHP脚本,用于创建要显示的PDF内容。如果合适,可以使用一些命令行参数来控制创建的内容,或者将内容存储在会话变量中。我们称之为makemypdf.php

从Javascript中打开一个弹出窗口,将其作为网址:

window.open(makemypdf.php, "mypdfwindow","...other window specs");

新窗口将包含您的PDF文件,现有页面仍然打开。

你的问题对内容有点了解,所以你必须自己填写一些技巧。

在您的主页中:

session_start();
$_SESSION['pdfcontent'][0] = "First PDF content";
$_SESSION['pdfcontent'][1] = "Second PDF content";

你的开窗器变成:

window.open("makemypdf.php?pdfcontent=1", "mypdfwindow","...other window specs");

并在makemypdf.php

session_start();
$pdfcontent = $_SESSION['pdfcontent'][$_GET['pdfcontent'];
// render your PDF document here