IE6的下载问题点击数:25 | 回复数:0 | 最后回复发表于04.05
1楼

-
119.124.129.*
-
发表于 2010.04.05 16:58:00
用IE6下载文件时会出现无法下载的情况
据说是
使用php实现文件下载时总是IE6总是提示不能下载,firefox可以正常下载, 因此确定是IE的问题,
查微软的官方网站要下载一个修复程序, 我们不可能因为这个Bug让每一个用户下载一个修复程序!
php实现下载的代码如下:
public function download()
{
$filename = basename($this->_fileName);
$header_file = (strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE')) ?
preg_replace('/./', '%2e', $filename, substr_count($filename, '.') - 1) : $filename;
header("Content-Disposition: attachment; filename="".$header_file."";");
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . filesize($this->_fileName));
@readfile( $this->_fileName ) ));
}
在网上插资料说是IE下载缓存有问题,
加入header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
解决问题, 真正的原因估计还要等“微软”解释
这个问题