【发布时间】:2017-04-11 09:36:33
【问题描述】:
我似乎无法在 codeigniter 中上传文件。我不知道问题是否出在$_FILES,当我尝试做print_r($_FILES) 它显示一个空数组。
附加控制器和下面的视图:
控制器
public function upload_files(){
$this->load->library('upload');
$filesCount = count($_FILES['userfile']['name']);
for($i = 0; $i < $filesCount; $i++){
$pathToUpload="Path/to/folder";
$folder=$id;
$uploadPath=$this->create_dir($pathToUpload,$folder);
$_FILES['userFile']['name'] = $_FILES['userfile']['name'][$i];
$_FILES['userFile']['tmp_name'] = $_FILES['userfile']['tmp_name'][$i];
$_FILES['userFile']['size'] = $_FILES['userfile']['size'][$i];
$config['upload_path'] = $uploadPath;
$config['allowed_types'] = '*';
$this->load->library('upload', $config);
$this->upload->initialize($config);
$this->upload->do_upload('userfile');
$this->upload->display_errors();
}
}
查看
<form action="<?php echo base_url(); ?>index.php/Controller_name/upload_files" method="post" enctype="multipart/form-data">
<div class="form-group">
<label class="control-label col-lg-4">Attach Documents</label>
<div class="col-lg-4">
<input type="file" class="form-control" size="20" name="usefile[]" multiple="multiple" />
</div>
</div>
</form>
任何帮助将不胜感激。我似乎无法弄清楚为什么 $_FILES 没有被发布
【问题讨论】:
-
你能设置 $config["allowed_types"] = "*";
-
在检查文件计数之前在
if statement中使用iseet($_FILES['userfile'])。 -
我已经加了
* -
@Gaurav 如果我这样做,那么不会有错误,文件仍然不会上传
-
@davidnoronha 从第一行删除加载库代码。还要检查 view 输入
name="usefile"和 controller$_FILES['userfile']应该相同。
标签: php codeigniter file