强制下载文件的代码(解决了IE下中文文件名乱码问题)

飘逸的风13年前 (2013-01-26)程序6907
以下这段代码作用是:浏览器提交excel格式的数据和文件名到服务器上,PHP将请求转化为可下载的excel文件,并要求浏览器弹出文件下载提示窗口。

中间遇到一个问题是提交的中文文件名直接放到header里在IE下会变成乱码,解决方法是将文件名先urlencode一下再放入header,如下。

<?php
   $file_name = urlencode($_REQUEST['filename']);
   header("Pragma: public");   header("Expires: 0");
   header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
   header("Content-Type: application/force-download");
   header('Content-Type: application/vnd.ms-excel; charset=utf-8');
   header("Content-Transfer-Encoding: binary");
   header('Content-Disposition: attachment; filename='.$file_name);
   echo stripslashes($_REQUEST['content']);  

?>

转: https://www.cnblogs.com/aiyuchen/archive/2011/05/09/2040894.html

相关文章

7个非常适合初学者使用的实用PHP方法

你有没有查看过全部PHP的方法,我大概统计了一下,在PHP参考中一共有5025个。如果你初学这种web编程语言,那么我将介绍几个非常实用的PHP方法,希望能够对你有帮助! Function1...

emlog百度分享插件[提供下载]

emlog百度分享插件[提供下载]

emlog百度分享插件下载地址:bdshare.zip 百度分享概况: 引入社会化流量 用户浏览网站内容时产生的分享行为可以增加网站内容在腾讯空间、新浪微博和人人网等社会化网站的曝光机会...

PHP攻击网站防御代码-以及攻击代码反译

这是我无意中攻击一个网站发现的一个代码PHP有效的拦截住我的DDOS  <?php   //查询禁止IP   $ip =$_SERVER['R...

thinkphp 使用U方法自动生成URL超链接

ThinkPHP U方法 U 方法是 ThinkPHP 内置的一个快捷方法,可以根据系统 URL 模式配置动态的生成智能的 URL 地址。 由于 ThinkPHP 支持各种不同的 URL...

10个你可能从未用过的PHP函数

1. sys_getloadavg() sys_getloadavt()可以获得系统负载情况。该函数返回一个包含三个元素的数组,每个元素分别代表系统再过去的1、5和15分钟内的平均负载。...

PHP一些代码收藏:验证身份号、根据身份证号获取星座和生肖等

<?php // PHP根据身份证号,自动获取对应的星座函数 function get_xingzuo($cid) { // 根据身份证号,自动返回对应的星座 if (!isIdCard...

发表评论

访客

看不清,换一张

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