She*_*don 6 php codeigniter file-upload
我正在尝试使用Codeigniter中的上传帮助程序上传.docx.
public function upload($id,$type){
$folder = $type;
$config['upload_path'] = RESOURCE_PATH . $folder;
$config['allowed_types'] = 'pdf|doc|docx';
$config['max_size'] = '100000';
$this->CI->load->library('upload',$config);
//$this->load->library('upload', $config);
if (!$this->CI->upload->do_upload('userfile')){
echo $this->CI->upload->display_errors();
}
....
Run Code Online (Sandbox Code Playgroud)
上传功能在我的本地主机上正常工作.但是,当我尝试在服务器上上传.docx文件时,我得到"您尝试上传的文件类型是不允许的".
我可以在服务器上传其他文件,代码是我本地的精确副本.我也搜索了一下,发现有些人将.docx的mime更改为:
'docx' => array('application/msword','application/vnd.openxmlformats-officedocument.wordprocessingml.document','application/octet-stream')
Run Code Online (Sandbox Code Playgroud)
但这似乎没有解决问题.可能出现什么问题,如何解决问题以便解决此问题?
jon*_*nes 14
尝试添加这个mime类型:application/zipto application/config/mimes.phpfor docx.这个对我有用.如果没有帮助.打开system/libraries/Upload.php(第205行)并执行此操作:
var_dump($this->file_type);
exit();
Run Code Online (Sandbox Code Playgroud)
您将看到.docx的文件类型,需要将其添加到config中的docx mimes列表中.