Php 获得;“不允许使用文件类型”;使用Codeigniter上传
首先,关于这个话题已经有很多(已解决的)问题。我尝试了所有可能的解决办法。但是没有用Php 获得;“不允许使用文件类型”;使用Codeigniter上传,php,codeigniter,file-upload,upload,mime-types,Php,Codeigniter,File Upload,Upload,Mime Types,首先,关于这个话题已经有很多(已解决的)问题。我尝试了所有可能的解决办法。但是没有用 问题出现在CI版本2.1.4和2.2.1中 我还尝试使用不同的文件类型,例如png、gif和txt 我没有做任何mime类型的改动,例如在.htaccess文件中使用AddType 我使用了一个简单的html表单和一个用于调试的 我已经在PHP版本5.5和5.6(启用了fileinfo模块)中试用过它 mime类型确实存在于mimes.php文件中 tmp文件夹是可写的 我没有选择了… 有人知道问题是什么吗
- 问题出现在CI版本
和2.1.4
中2.2.1
- 我还尝试使用不同的文件类型,例如
、png
和gif
txt
- 我没有做任何
mime类型的改动,例如在
文件中使用.htaccess
AddType
- 我使用了一个简单的html表单和一个用于调试的
- 我已经在PHP版本
和5.5
(启用了fileinfo模块)中试用过它5.6
- mime类型确实存在于
文件中mimes.php
文件夹是可写的tmp
有人知道问题是什么吗 提前谢谢
配置
$this->uploadconfig=array(
“上传路径”=>“/tmp/”,
“允许的_类型”=>“png | gif | txt”,
“覆盖”=>TRUE,
“最大大小”=>“25000KB”,
“最大高度”=>“5000”,
“最大宽度”=>“5000”
);
$this->load->library('upload',$this->uploadconfig);
错误
不允许您尝试上载的文件类型。
输出
[文件名]=>test.png
[文件类型]=>图像/png
[文件路径]=>/CORRECT\u服务器路径/tmp/
[完整路径]=>/CORRECT\u SERVER\u path/tmp/test.png
[原始名称]=>测试
[原名]=>
[客户端名称]=>test.png
[文件\u ext]=>.png
[文件大小]=>851
[是_图像]=>1
[图像宽度]=>
[图像高度]=>
[图像类型]=>
[image\u size\u str]=>
我找到了解决方案:
Codeigniter2.1.4
有一个如上所述的错误。因此,我已将CI更新到版本
2.2.1
,并遵循更新说明和
在第二次检查mimes.php
文件后,我注意到原始文件与新版本中包含的文件之间存在差异。我把旧的换成了新的,问题就解决了
升级说明中未记录两个文件之间存在差异的事实。文件的较旧版本(
CI 2.1.4
)返回一个数组。较新的(CI 2.2.1
)不返回数组,而是使用变量名$mimes
设置数组。您的min文件中是否定义了'gif'=>'image/gif','png'=>'image/png'?是的,以这种形式:'png'=>数组('image/png','image/x-png'))
这有助于@Ts检查mime类型,让我找到问题所在。感谢您寻找解决方案。