Php 编码点火器';s文件上传";允许的“U型”;选项不能正常工作
出于某种原因,如果我把Php 编码点火器';s文件上传";允许的“U型”;选项不能正常工作,php,codeigniter,csv,file-upload,Php,Codeigniter,Csv,File Upload,出于某种原因,如果我把'allowed_types'=>'*',,它会接受它,并且工作正常。但是,如果我只想要csv文件:'allowed\u types'=>'csv',当我上传csv文件时,它会输出一个错误:您尝试上传的文件类型是不允许的。 我如何在不允许所有类型的文件上传的情况下解决这个问题,而只允许csv文件上传?Codeigniter文档说要使用文件MIME类型,csv的MIME类型是“text/csv”,所以使用它而不是“csv”。 仍然提供您尝试上载的文件类型是不允许的。尝试一下,
'allowed_types'=>'*',
,它会接受它,并且工作正常。但是,如果我只想要csv文件:'allowed\u types'=>'csv',
当我上传csv文件时,它会输出一个错误:您尝试上传的文件类型是不允许的。
我如何在不允许所有类型的文件上传的情况下解决这个问题,而只允许
csv
文件上传?Codeigniter文档说要使用文件MIME类型,csv的MIME类型是“text/csv”,所以使用它而不是“csv”。
仍然提供
您尝试上载的文件类型是不允许的。
尝试一下,有许多不同类型的csv MIME类型,所有类型都是有效的,因此您必须将它们全部包括在内。好的,我在mimes.php文件中编辑了这一行。最后对允许的_类型执行了csv
,最终成功了。谢谢
$this->load->library('upload');
$file_config = array(
'upload_path' => $dir,
'allowed_types' => 'csv',
'file_name' => strtoupper($this->input->post('class_name')) . '.csv',
'overwrite' => TRUE,
'max_size' => 2048,
'max_filename' => 128,
'remove_spaces' => FALSE
);
$this->upload->initialize($file_config);
// DEBUG
if (!$this->upload->do_upload('file'))
echo $this->upload->display_errors();
else
echo 'UPLOADED.';