79450

附件下载时的问题

回帖
回帖数 4
阅读数 4748
发表时间 2010-09-15 13:06:34
📮
只抽半根烟楼主
春哥,看1.3附件多了删除功能,我就去测试了下。结果发现。如果附件名称中是中文的话,在下载的时候名称是乱码。英文没有这个问题。是否属于一个BUG呢 关注中!
4个回复
🍟
春哥沙发
这个是比较典型的ie下面的问题。ie下面,下载附件的文件名要进行urlencode。不是非常彻底的解决方案:

打开module/file/control.php,找到74行

72 if(file_exists($file->realPath))
73 {
74 $fileName = $file->title . '.' . $file->extension;
75 if(strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false) $fileName = urlencode($fileName);
76 header('Content-Description: File Transfer');
77 header('Content-type: application/octet-stream');
78 header("Content-Disposition: attachment; filename=$fileName");
79 $fileData = file_get_contents($file->realPath);
80 echo $fileData;
81 }
82 $this->app->error("The file you visit $fileID not found.", __FILE__, __LINE__, true);
83 }
84 }

加入75行就可以了。

2010-09-15 15:38:17 王春生 最后编辑 2010-09-15 15:38:17 王春生 回帖
🎇
wayne板凳
谢谢指点,
2010-09-15 22:20:34 wayne 回帖
我加上这句话后,怎么全部直接在IE中打开了附件,乱码。
2010-10-15 09:19:56 py 回帖
用firefox一样有这个问题。
文件名是乱码,并且可能改变后缀,变成纯文本文档。不过文件内容是正确的,可以用正确的工具打开。
2010-10-15 09:57:19 prosup 回帖
联系我们
联系人
刘斌/高级客户经理
电话(微信)
17685869372
QQ号码
526288068
联系邮箱
liubin@chandao.com
相关帖子
返回顶部
客服头像
刘斌
高级客户经理
客服微信
17685869372
526288068
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。问题反馈反馈点击这里,让我们聆听您的建议与反馈。