27
2013-03

对于pdf文件不支持浏览器下载如何处理?

最近在工作中遇到这样一个问题,就是知道pdf文件的下载地址,但是所有浏览器对于pdf文件都是在浏览器中打开,不支持下载,需要用户下载下来。于是就做了一个html页面,把下载地址设为downpdf.php?pdfid="";这个pdfid是根据下面的数组的键名来定的,需要注意的是,对于包含有空格的文件名需要用-或者_来隔离,否则会导致截取不完全,但是我发现,除了火狐不支持外,其他的浏览器正常,可以识别包含空格的文件名,所以在处理上传文件的文件名的时候,如果是英文,尽量不要带空格,可以用-或者_取代空格,一下就是代码:

$pdfid=$_GET['pdfid'];//获取文件ID
$pdf=array('1'=>'http://www.eeworld.com.cn/Vishay/2013_activity/Automotive.pdf',
                 '2'=>'http://www.eeworld.com.cn/Vishay/2013_activity/ConventionalPowerTrains.pdf',
                 '3'=>'http://www.eeworld.com.cn/Vishay/2013_activity/Chassis Controls.pdf',
                 '4'=>'http://www.eeworld.com.cn/Vishay/2013_activity/Body Electronics.pdf',
                 '5'=>'http://www.eeworld.com.cn/Vishay/2013_activity/Micro and Mild Hybrids.pdf',
                 '6'=>'http://www.eeworld.com.cn/Vishay/2013_activity/Full Hybrid Vehicles.pdf',
                 '7'=>'http://www.eeworld.com.cn/Vishay/2013_activity/FEVs.pdf',
                 '8'=>'http://www.eeworld.com.cn/Vishay/2013_activity/Off-Road Equipment.pdf',
                 '9'=>'http://www.eeworld.com.cn/Vishay/2013_activity/Heavy-Duty Transportation.pdf',
);
           
            $file_dir ="/Data/webapps/cms/Vishay/2013_activity";
                   
         $file_url = $pdf[$pdfid];
         $file_name = str_replace('http://www.eeworld.com.cn/Vishay/2013_activity/', '', $file_url);
         //echo $file_name;exit;
         $file = fopen($file_dir."/".$file_name,"r"); // 打开文件
         header('Content-Encoding: none');
         header("Content-type: application/octet-stream");
         header("Accept-Ranges: bytes");
         header("Accept-Length: ".filesize($file_dir."/".$file_name));
         header( 'Content-Transfer-Encoding: binary' );
         header("Content-Disposition: attachment; filename=www.eeworld.com.cn_".$file_name); //以真实文件名提供给浏览器下载 
         header('Pragma: no-cache');
         header('Expires: 0');
         //输出文件内容
         echo fread($file,filesize($file_dir."/".$file_name));
         fclose($file);
         exit;



除非注明,文章均为史亚永原创,欢迎转载!转载请注明本文地址,谢谢。

本文地址:http://www.shiyayong.cn/post/158.html

评论列表:

1  Godaddy优惠码  2013-3-29 12:59:02 回复该留言  IP:180.108.25.254
兄弟 有意交换链接吗?
  茶馆老板  2013-3-29 21:14:35 回复该留言  IP:117.79.232.153
不好意思,我们不是同类别的网站,不能交换
茶馆老板
Godaddy优惠码

发表评论:

(设置个性头像)

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

无觅相关文章插件,快速提升流量