-->

开放DOMPDF从特定网页新选项卡中获取的数据(open dompdf in new tab tak

2019-09-26 13:37发布

我知道,有至少两个其他类似的问题,但他们不帮我。

我有TinyMCE的textarea的,其中用户写他的文字。 然后有一个按钮,“PDF”应该创建PDF并在新标签中打开它。 PDF的内容是TinyMCE的内容。

当用户点击按钮,表单提交的index.php行动。 然后从index.php的$ _ POST变量收集信息,并创建PDF文件。

我不能让它在新标签中作为一个正常的链接打开。 我尝试了不同的方式。

1)我可以打开在同一个标​​签PDF,但是这不是我所需要的。 该行打开我的同一选项卡上的PDF:

$dompdf->stream('document.pdf',array('Attachment'=>0));

2)我可以在新窗口中打开,但随后的浏览器警告说,这是弹出。 客户不想要它。 也与该另一个问题是,PDF存储在服务器上。 我不希望它(弹出警告更为重要)。 这里是我的代码:

$output = $dompdf->output();
file_put_contents('document.pdf', $output); //save pdf on server

//opens generated pdf in new window, but this creates warning for popup
echo '<script type="text/javascript" language="javascript"> 
window.open("http://modeles-de-lettres.org/test/saved_pdf.pdf", "_blank"); 
</script>'; 

我已阅读这些:

1) 在新标签使用DOMPDF打开PDF

这表明:“至于在新标签中打开这取决于你是如何生成的PDF,但最简单的方式,提供与目标属性的链接。” 我想这意味着我有

<a href="my.pdf" target="blank" 

要么

<a href="my.php" target="blank" 

但是,这并不为我工作,因为我应该张贴我的表格从PDF获取数据。

2) 生成对DOMPDF NEWTAB的PDF

这是以前的东西(我做到了无会话),我已经实现,但它警告外币对弹出窗口。

Answer 1:

问题是,你正在做的事情的顺序。 你应该从用户的事件打开新窗口,如单击一个按钮。 如果在页面加载事件的脚本试图打开一个窗口,浏览器将假定它是一个不需要的弹出,因为用户没有做任何事情,除了导航到该页面。

有什么能为你工作,是增加一个target="somewhere_new"属性的form标签。 这样一来,因为没有帧/ IFRAME用浏览器将打开一个新的标签name="somewhere_new"属性,你就不必做什么特别在服务器端,只是处理数据,您在使用前做$dompdf->stream('document.pdf',array('Attachment'=>0)); 在末尾



Answer 2:

您只需做到以下几点:

 <button type="submit" formtarget="_blank">Submit to a new window</button>

formtarget =“_空白”属性将打开新的标签页。

希望它会帮助你!



文章来源: open dompdf in new tab taken data from given page
标签: php css dompdf