我在我的网页上提供pdf文件的链接供下载,如下所示
<a href="myfile.pdf">Download Brochure</a>
问题是当用户点击这个链接时
- 如果用户已安装Adobe Acrobat,则会在Adobe Reader的同一浏览器窗口中打开该文件.
- 如果未安装Adobe Acrobat,则会向用户弹出下载文件的窗口.
但我希望无论是否安装了"AdobeAcrobat",它总是弹出给用户下载.
请告诉我怎么做?
我在我的网页上提供pdf文件的链接供下载,如下所示
<a href="myfile.pdf">Download Brochure</a>
问题是当用户点击这个链接时
但我希望无论是否安装了"AdobeAcrobat",它总是弹出给用户下载.
请告诉我怎么做?
而不是链接到.PDF文件,而是执行以下操作
<a href="pdf_server.php?file=pdffilename">Download my eBook</a>
它输出一个自定义标题,打开PDF(二进制安全)并将数据打印到用户的浏览器,然后他们可以 Select 保存PDF,而不考虑他们的浏览器设置.pdf_server.php应该如下所示:
header("Content-Type: application/octet-stream");
$file = $_GET["file"] .".pdf";
header("Content-Disposition: attachment; filename=" . urlencode($file));
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Description: File Transfer");
header("Content-Length: " . filesize($file));
flush(); // this doesn't really matter.
$fp = fopen($file, "r");
while (!feof($fp))
{
echo fread($fp, 65536);
flush(); // this is essential for large downloads
}
fclose($fp);
PS:显然,对"file"变量进行一些健全性判断,以防止人们窃取您的文件,例如不接受文件扩展名、拒绝斜杠、添加.pdf的价值