我正在尝试在CodeIgniter 2上上传文件,但失败了。我尝试了几种不同的方法,实际上 CI 正在获取文件并尝试将其放入目标文件夹中,但我认为文件夹权限存在问题。因为我可以回显文件名等。
这是我的模型文件的相关部分:
$config = array
(
'upload_path' => 'uploads/campaigns/data',
'allowed_types' => 'csv',
);
$this->upload->initialize($config);
$this->upload->do_upload('file');
$file = $this->upload->data();
$file_name = $file['file_name'];
if(!empty($file_name)) {
echo $file_name;
}
else {
echo $this->upload->display_errors();
}
使用此代码,我可以看到文件名,但文件未上传。我在此服务器上只有root帐户以及root创建和拥有的所有文件。文件夹具有 777 权限。我现在应该尝试什么?
谢谢!
使用它来跟踪您的错误
if ( ! $this->upload->do_upload())
{
echo $this->upload->display_errors();
}
else
{
echo "success";
}
我希望你也加载了库
编辑 01
$config['upload_path'] = './uploads/campaigns/data';
$config['allowed_types'] = 'csv';
$config['max_size'] = '5120'; # 5MB allowd
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload())
{
echo $this->upload->display_errors();
}
else
{
echo $this->upload->data();
}
在application/config/mimes.php
检查是否有csv
格式。如果存在,则将其作为新项目添加到数组上
'csv' => array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'application/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel'),
我认为代码点火器的上传库存在问题。有关更多详细信息,请参阅链接,希望对您有所帮助。