2012-03-25 67 views
0

所以我通过我的上传表单上传任何图像文件,并上传它两次(例如name,name1)。代码模型中的函数负责下面上传:Codeigniter两次上传相同的文件

function do_upload() { 
    if(isset($_POST['media'])) { 
     $config = array( 
      'allowed_types' => 'jpg|jpeg|gif|png|pdf', 
      'upload_path' => $this->path; 
     ); 
     $this->load->library('upload', $config); 
     $i = 1; 
      while($i < ($this->input->post('value')+1)) { 
       $this->upload->do_upload('attachment'.$i); 
       if(!$this->upload->do_upload('attachment'.$i)) echo $this->upload->display_errors(); 
       echo "added attachment".$i."<br/>"; 
       $i = ++$i; 
     } 
    } else { echo "nothing passed"; } 
} 

Chrome开发工具,我看正常POST请求与文件我上载送,但它创造了他们的文件夹中翻了一倍。有任何想法吗?

干杯!

回答

1

您在while循环中调用$ this-> upload-> do_upload方法两次。删除if语句之前的第一行。

+0

谢谢!我的错误:)没有想到它会在if语句中实际执行! – mjanisz1 2012-03-25 20:58:42