我正在尝试使用以下代码上传Crystal Reports(.rpt)文件:
$config=array(
'upload_path'=>$_SERVER['DOCUMENT_ROOT']."/assets/uploads/rpt/",
'allowed_types'=>"rpt",
'overwrite' => TRUE,
'file_name' =>$filename
);
$this->load->library('upload', $config);
$this->upload->initialize($config);
if($this->upload->do_upload('rpt1'))
{
echo "Done";
}
else
echo $this->upload->display_errors();
但是它返回:
不允许您尝试上传的文件类型。
然后我试图找出上传的文件类型:
print_r($_FILES['rpt1']['type']);
它返回:
应用程序/八位字节流
我进行了以下更新:
'allowed_types'=>"rpt|application/octet-stream",
但是它没有用,我仍然收到相同的错误消息。
我还在 application / config / mimes.php
中添加了以下行'rpt' => 'application/octet-stream',
为了将.rpt文件上传到服务器,我还需要做什么?
答案 0 :(得分:0)
我去了
在行号system / libraries / Upload.php
454(CI 3.x)并编写了以下代码行:
var_dump($this->file_type); die();
执行后,它返回
文本/纯文本
使用
时print_r($_FILES['rpt1']['type']);
给予
应用程序/八位字节流
现在
application / config / mimes.php
我写道:'rpt' => 'text/plain',
这次,一切正常。