2013-03-12 148 views
0

我的表單中有3個輸入文件字段,每次提交表單時它只提交第一個文件,其他文件不存在圖像文件夾。

這是我正在做我的控制器:

public function book() 
{ 
    $id = $this->manage_model->book(); 
    $images = array("1","2","3"); 
    $this->load->library('upload'); 

    foreach($images as $i){ 

     if(!empty($_FILES['files'.$i]['name'])) 
     { 
      $config['file_name'] = $id . '_' . $i; 
      $config['upload_path'] = './photos/'; 
      $config['allowed_types'] = 'jpg|png'; 

      $this->upload->initialize($config); 
      $name = "files" . $i; 
      if (! $this->upload->do_upload($name)) 
      { 
            //set flashdata 
       redirect('manage/add_page'); 
      } 
      else 
      { 
       redirect('manage/add_page'); 
      } 
     } 

    } 

} 

而這些文件輸入字段的名稱:我使用的是在多和POST方法

      <input type="file" name="files1" /> 
      <input type="file" name="files2" /> 
      <input type="file" name="files3" /> 

我的表格,所以這也不是問題。有沒有人看到任何錯誤?請讓我知道

+0

你有什麼企圖解決這個問題做? – 2013-03-12 20:46:13

+0

以及我在文檔中注意到$ this-> upload-> initialize()不可用(可能不再需要?),所以我只是使用配置設置加載了上傳庫,但結果相同。我也嘗試使用文件輸入「userfile」的推薦名稱,但沒有奏效。這可能是我的php.ini文件中的大小限制嗎?它目前8mb – a7omiton 2013-03-12 20:50:09

+0

也只是試圖與一個for循環與刪除重定向條件,但是根本不導入任何圖像.. – a7omiton 2013-03-12 21:12:08

回答

0

重定向不允許foreach循環經過多次,因爲它在第一次循環返回到add_page之後被重定向。

foreach循環應該是這樣的:

foreach($images as $i){ 

     if(!empty($_FILES['files'.$i]['name'])) 
     { 
      $config['file_name'] = $id . '_' . $i; 
      $config['upload_path'] = './photos/'; 
      $config['allowed_types'] = 'jpg|png'; 

      $this->upload->initialize($config); 

      $name = "files" . $i; 
      if (! $this->upload->do_upload($name)) 
      { 
       redirect('manage/add_page'); 
      } 

     } 

    } 

    redirect('manage/add_page'); 

我想我只是覺得更多的時候我張貼在這裏笑一個問題...

相關問題