2015-06-21 56 views
0

當我將數據傳遞到我的文件上傳控制器時,它給出了錯誤undefined offset: 1未定義的偏移1:使用ajax文件上傳時傳遞文件

function TestFileUpload() { 
    $i=0; 
    if(!isset($_FILES[$i])) { 
     echo "No file is being uploaded"; 
    } 
    else { 
    $x = $_FILES[$i]['name']; 
    $xx = explode('.', $x); 


    $config['upload_path'] = 'MRS-files\Upload_files'; 
    $config['allowed_types'] = 'xls|doc|jpg|png|gif|pdf'; 
    $this->load->library('upload',$config); 

    $count = count($_FILES[$i]['name']). ' '; 

     while ($i <= 4) 
     { 
      echo $count; 
      $x = $_FILES[$i]['name']; 
      $xx=explode(".", $x); 
      echo $_FILES[$i]['name'].' '.$_FILES[$i]['type'].' '.$_FILES[$i]['size'] ; 
      $this->upload->initialize($config); 

      $_FILES['up']['name']  = $_FILES[$i]['name']; 
      $_FILES['up']['tmp_name'] = $_FILES[$i]['tmp_name']; 
      $_FILES['up']['type']  = $_FILES[$i]['type']; 
      $_FILES['up']['size']  = $_FILES[$i]['size']; 

      if (! $this->upload->do_upload('up')) { 
       //error on uploading 
       echo str_replace('','',$this->upload->display_errors()); //temporary commented no use cause of redirect to homepage 
       //$this->cancelREC(); 
       exit(); 
      } 

      else{ 
       $data = array('upload_data' => $this->upload->data()); 
       $this->new_development_model->insertonAttachments($data['upload_data']); 
       $i++; 
      } 
     } 
    } 
} 
+0

'AJAX文件upload'我不能在這裏找到Ajax代碼 –

回答

0

這可能是相關的原因,如果您定義了$_FILES[$i],則需要檢查循環。

你這樣做,但只有一次,當$i = 0

我甚至認爲,如果你在循環檢查,你不會需要循環之前做

if(!isset($_FILES[$i])) { 
    echo "No file is being uploaded"; 
} 
else { /*...*/ }