kindeditor 用 CI 的 上传函数 接受 无文件类型 问题。
用 kindeditor 批量图片上传时,遇到以下问题:kindeditor 发给 服务器 的 数据如下:
------------Ij5ei4Ef1ei4ei4ae0cH2ei4ae0gL6Content-Disposition: form-data; name="Filename"é’花瓷å°.jpg------------Ij5ei4Ef1ei4ei4ae0cH2ei4ae0gL6Content-Disposition: form-data; name="imgFile"; filename="é’花瓷å°.jpg"Content-Type: application/octet-stream------------Ij5ei4Ef1ei4ei4ae0cH2ei4ae0gL6Content-Disposition: form-data; name="Upload"Submit Query------------Ij5ei4Ef1ei4ei4ae0cH2ei4ae0gL6--
而上传单个文件时 数据是这样的:
------WebKitFormBoundarySdeT3xemxCI3YwaDContent-Disposition: form-data; name="localUrl"C:\fakepath\é’花瓷å°.jpg------WebKitFormBoundarySdeT3xemxCI3YwaDContent-Disposition: form-data; name="imgFile"; filename="é’花瓷å°.jpg"Content-Type: image/jpeg------WebKitFormBoundarySdeT3xemxCI3YwaD--
问题是,CI 的Upload 这个类 里头需要判断文件类型:
// Is the file type allowed to be uploaded?if ( ! $this->is_allowed_filetype())
批量上传图片时的请求是: Content-Type: application/octet-stream
CI 获取不到 是哪一种类型啊。
请教解决方法。
可以用kindeditor自带的upload_json做处理,没必要用CI的。 我也用的kindeditor自带的 https://github.com/EllisLab/CodeIgniter/wiki/SWFUpload
其实官方wiki一直都有说明,是你们不看而已。 需要打印file对象并添加资源类型
饿,俺是试了好几种方法,最后没办法看源码,最后发现改mime文件配置最好了。
// 但还是有点不太放心,因为修改了系统配置文件。
感谢 lamtin, 要是早点就好了,就不用看源码了。 本帖最后由 yuvista 于 2012-11-19 09:46 编辑
swfupload会更改上传文件的mimetype,将所有类型都变为application/octet-stream,使用finfo_file可以找到原始mime类型,不过需要你开启这个扩展。
另外,修改mime文件的方式不可取,因为那样不安全,楼主注意。 lamtin 发表于 2012-11-17 00:16 static/image/common/back.gif
https://github.com/EllisLab/CodeIgniter/wiki/SWFUpload
其实官方wiki一直都有说明,是你们不看而已。 ...
THX。。。
页:
[1]