IE php关于强制下载文件的代码


Posted in Javascript onAugust 23, 2008

 作者:xling
首先看 xls 文件的下载:

//header("Cache-Control: public");
header('content-type:application/vnd.ms-excel');
header("Content-Disposition:attachment; filename=report.xls");

如果不加第一句,会弹出 : Internet Explorer 无法下载 **.php (来自**网站)。Internet Explorer无法打开该 internet 网站。请求的网站不可用,或找不到,请以后再试。

而且连名字都不是所设的名字:report.xls,而是 **.php,把第一句加上就OK了。

在看 rar,gif 之类的,不加第一句,居然通过,不弹出那个错误框框!

如果是 gif等图片的话 ,Content-Disposition:attachment; 会强制弹出一个保存对话框。如果省略或是 inline 就会直接在网页里显示。

上面就是我用笨方法研究出来的(找不到可用的文档,我只好一个一个试)。

下面是 Content-type 应取值,

switch( $file_extension ) {
case "pdf": $ctype="application/pdf"; break;
case "exe": $ctype="application/octet-stream"; break;
case "zip": $ctype="application/zip"; break;
case "doc": $ctype="application/msword"; break;
case "xls": $ctype="application/vnd.ms-excel"; break;
case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
case "gif": $ctype="image/gif"; break;
case "png": $ctype="image/png"; break;
case "jpeg":
case "jpg": $ctype="image/jpg"; break;
case "mp3": $ctype="audio/mpeg"; break;
case "wav": $ctype="audio/x-wav"; break;
case "mpeg":
case "mpg":
case "mpe": $ctype="video/mpeg"; break;
case "mov": $ctype="video/quicktime"; break;
case "avi": $ctype="video/x-msvideo"; break;

//The following are for extensions that shouldn't be downloaded (sensitive stuff, like php files)
case "php":
case "htm":
case "html":
case "txt": die("<b>Cannot be used for ". $file_extension ." files!</b>"); break;

default: $ctype="application/force-download";
}

Javascript 相关文章推荐
如何实现JS函数的重载
Sep 22 Javascript
Javascript模板技术
Apr 27 Javascript
javascript面向对象编程(一) 实例代码
Jun 25 Javascript
FileUpload上传图片(图片不变形)
Aug 05 Javascript
jQuery $.data()方法使用注意细节
Dec 31 Javascript
网站内容禁止复制和粘贴、另存为的js代码
Feb 26 Javascript
IE6浏览器中window.location.href无效的解决方法
Nov 20 Javascript
js获取数组的最后一个元素
Apr 14 Javascript
分享javascript计算时间差的示例代码
Mar 19 Javascript
js判断是否为空和typeof的用法(详解)
Oct 07 Javascript
Dropzone.js实现文件拖拽上传功能(附源码下载)
Nov 22 Javascript
微信小程序将字符串生成二维码图片的操作方法
Jul 17 Javascript
FormValidate 表单验证功能代码更新并提供下载
Aug 23 #Javascript
Javascript 篱式条件判断
Aug 22 #Javascript
解决AJAX中跨域访问出现'没有权限'的错误
Aug 20 #Javascript
javascript:void(0)的真正含义实例分析
Aug 20 #Javascript
利用404错误页面实现UrlRewrite的实现代码
Aug 20 #Javascript
一些不错的js函数ajax
Aug 20 #Javascript
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
Aug 14 #Javascript
You might like
php的curl实现get和post的代码
2008/08/23 PHP
php fsockopen中多线程问题的解决办法[翻译]
2011/11/09 PHP
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
php中文字符串截取多种方法汇总
2016/10/06 PHP
PHP处理bmp格式图片的方法分析
2017/07/04 PHP
PHP Post获取不到非表单数据的问题解决办法
2018/02/27 PHP
php7 新增功能实例总结
2020/05/25 PHP
js实现图片和链接文字同步切换特效的方法
2015/02/20 Javascript
jQuery EasyUI常用数据验证汇总
2016/09/18 Javascript
在百度搜索结果中去除掉一些网站的资料(通过js控制不让显示)
2017/05/02 Javascript
Angular.js项目中使用gulp实现自动化构建以及压缩打包详解
2017/07/19 Javascript
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
JavaScript字符串处理常见操作方法小结
2019/11/15 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
[48:24]完美世界DOTA2联赛循环赛LBZS vs Forest 第一场 10月30日
2020/10/31 DOTA
在Python的Bottle框架中使用微信API的示例
2015/04/23 Python
Pyinstaller将py打包成exe的实例
2018/03/31 Python
对django xadmin自定义菜单的实例详解
2019/01/03 Python
python调试神器PySnooper的使用
2019/07/03 Python
使用python将多个excel文件合并到同一个文件的方法
2019/07/09 Python
pycharm激活码有效到2020年11月底
2020/09/18 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
Python实现Canny及Hough算法代码实例解析
2020/08/06 Python
Answear匈牙利:来自全球200多个知名时尚品牌
2017/04/21 全球购物
Anthropologie英国:美国家喻户晓的休闲服装和家居产品品牌
2018/12/05 全球购物
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
解释i节点在文件系统中的作用
2013/11/26 面试题
汽车销售顾问求职自荐信
2014/01/01 职场文书
外贸业务员工作职责
2014/01/06 职场文书
文明生主要事迹
2014/05/25 职场文书
2014教师党员自我评议总结
2014/09/19 职场文书
企业财务总监岗位职责
2015/04/03 职场文书
肖申克救赎观后感
2015/06/02 职场文书
超级礼物观后感
2015/06/15 职场文书
如何撰写出一份完美的商业计划书?
2019/07/12 职场文书
详细介绍MySQL中limit和offset的用法
2022/05/06 MySQL