CI上传错误,您没有选择要上传的文件

问题描述:

我一直在这个应用程序工作一段时间,但我从来没有得到过这个错误。 我一直在尝试做多件事情来获得解决方案,比如将php.ini中的post_max_size修改为9999M,但没有工作,所以我不知道错误在哪里或者我需要做什么。CI上传错误,您没有选择要上传的文件

  $nextId = uniqid(); 
      $config['file_name'] = $nextId; 
      $config['overwrite'] = TRUE; 
      $config['upload_path'] = '/uploads/'; 
      $config['allowed_types'] = 'gif|jpg|png|jpeg'; 
      print_r($_FILES); 
      $this->load->library('upload', $config); 

      if (! $this->upload->do_upload()) { 
       $data['msg'] = '  Foto '.$this->upload->display_errors(); 
       $this->data['contenido'] = $this->load->view($this->mainView.'/nuevo_view', $data, TRUE); 
       $this->load->view('templates/main_template', $this->data); 
       return; 
      } else { 
       echo 'success'; } 

这是形式:

<form method="post" class="form-horizontal" action="<?php echo $this->router->class.'/nuevo'; ?>" enctype="multipart/form-data"> 
<div class="form-group"> 
     <label for="" class="col-sm-2 control-label">Imagen</label> 
     <input type="file" id="imagen" name="imagen" required> 
     <span class="help-block m-b-none">480px Ancho por 230px Alto (Recomendado)</span> 
    </div> 

等等之类的代码显示我打印_FILE的$知道,如果它的东西在阵列中;这是输出:

Array ([imagen] => Array ([name] => dropdown.9.png [type] => image/png [tmp_name] => /Applications/MAMP/tmp/php/php7WJQok [error] => 0 [size] => 1182)) 

的do_upload功能正在寻找一个领域,被称为“userfile的”,除非你改变它......

试试这个,看看它是否工作;

$this->upload->do_upload('imagen') 
+0

上帝,你救了我,非常感谢你,我没有注意到。 – 2014-11-14 16:48:37

+0

不用担心。将用户指南加入书签总是对我有帮助。 https://ellislab.com/codeigniter/user-guide/ – Craig 2014-11-14 16:50:29

链接file uploader类CI的

如前所述do_upload()函数希望的默认文件输入字段为userfile的

要么编辑文件输入字段userfile的 ,或使用,

$this->upload->do_upload('imagen')