我正在尝试使用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)
但这似乎没有解决问题.可能出现什么问题,如何解决问题以便解决此问题?
我一直试图将.arm上传到一个内置于codeigniter的网站.我知道它不是默认的我的类型所以我添加了它:
'amr' => 'audio/amr',
Run Code Online (Sandbox Code Playgroud)
但它似乎并没有与之合作.我还将它添加到允许的类型中.是否可以支持amr,如果是的话,我可能做错了什么?