uploadify 多图上传出现%EF%BB%BF 导致文件路径看似显示正确却无法访问
出现原因:
utf-8 文件的 BOM 头的十六进制表示是 EFBBBF
url 编码后是 %EF%BB%BF
任何一个被加载的文件有 BOM 头,返回的内容就会有 BOM 头
链接地址就会变成 ....%EF%BB%BF+IP21.cn.html 【仅仅F12才这样显示,地址栏显示正常】
一种解决方案:
1、上传模块,在返回的路径值前加个标识符,注意不要跟文件的命名有冲突:
if($images) { $info = '_' . $images['Filedata']['savename']; echo $info; }
2、js 接收返回值处理
'onUploadSuccess' : function(file, data, response) { // 处理不可见字符 var newdata = data.split("_")[1]; img += "<img width='200px' src='__PUBLIC__/Uploads/"+newdata+"'>"; $('#imgs').html(img); }
ok,这样就没问题了,在各种服务器下都没问题了。