Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在网站上显示pdf_Php_Pdf_Iframe - Fatal编程技术网

Php 在网站上显示pdf

Php 在网站上显示pdf,php,pdf,iframe,Php,Pdf,Iframe,我有个小问题。在我的服务器上,有几个pdf文件保存在公用文件夹之外。我想在我的网站上显示这些文件 显示我现在使用的pdf的代码: $pdf = '/var/www/vhosts/domain.com/users/'.$_GET['file']; header('Content-type: application/pdf'); header('Content-Disposition: inline; filename="'.$pdf.'"'); readfile($pdf); 我现在所做的是

我有个小问题。在我的服务器上,有几个pdf文件保存在公用文件夹之外。我想在我的网站上显示这些文件

显示我现在使用的pdf的代码:

$pdf = '/var/www/vhosts/domain.com/users/'.$_GET['file']; 
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="'.$pdf.'"'); 
readfile($pdf);
我现在所做的是通过iFrame显示它们,但在IE8上,我会得到消息,将文件保存到我的计算机上。在chrome和IE9上没有问题


是否有更好的方式显示PDF?

请查看此问题,用户与您有相同的问题:

我还有一份安全通知,用于:

这:
$pdf='/var/www/vhosts/domain.com/users/'.$\u GET['file']
这可能非常危险,想象一下如果有人这样修改url参数:
yoursite.php?文件=../../index.php

如果你在这里不是很小心,人们可以从你的服务器下载其他文件。。。因此,在使用之前,请小心验证您的$_GET['file']


关于

我认为如果您离开您:content-disposition:inline并将其更改为content-disposition:filename=“.”.$pdf.”浏览器将决定如何处理pdf。如果安装了pdf插件,它将使用该插件。

不幸的是,这也不起作用。在IE8上,我仍然收到消息“Internet Explorer阻止此站点将文件下载到您的计算机”。AdobeReader10已经安装…这不是ie8特有的问题吗?您的问题已经解决了吗?或者我们可以帮助您了解更多信息吗?
$pdf = '/var/www/vhosts/domain.com/users/'.$_GET['file']; 
header('Content-Disposition: inline; filename="'.$pdf.'"');// download header 
readfile($pdf)  //read our file and shows on website