2017-12-15 8 views
0

2つの入力ファイルを使用して異なるファイルタイプをアップロードすることはできますか? 2つの入力を持つフォームアップロードを作成しましたが、別のファイルを別の名前でアップロードしてもファイル名が同じ理由が混乱します。codeigniter 3を使用して異なるタイプのファイルをアップロードしますか?

これは私のコントローラである:

public function file_data() { 

    $data['program'] = $this->input->post('program'); 
    $this->load->library('upload'); 

    $config['upload_path'] = './uploaded_files/laporan/absen'; 
    $config['allowed_types'] = 'pdf'; 

    $this->upload->initialize($config); 
    if (!$this->upload->do_upload('file_absen')) { 
     $error = array('error' => $this->upload->display_errors()); 
     $this->load->view('tutor/upload_form', $error); 

    } else { 
     unset($config); 
     $config['upload_path'] = './uploaded_files/laporan/nilai'; 
     $config['allowed_types'] = 'xls|xlsx'; 
     $config['overwrite'] = FALSE; 
     //$config['max_size'] = '15000'; 
     $this->upload->initialize($config); 
     if (!$this->upload->do_upload('file_nilai')) { 
      $error = array('error' => $this->upload->display_errors()); 
      $this->load->view('tutor/upload_form', $error); 
     } else { 
      $upload_data = $this->upload->data(); 

      //get the uploaded file name 
      $data['file_absen'] = $upload_data['file_name']; 
      $data['file_nilai'] = $upload_data['file_name']; 

      //store pic data to the db 
      $this->laporan_model->simpan_data($data); 
      redirect(base_url() . "tutor/laporan_np"); 
     } 
    } 
} 

は、これが私のモデルである:

//fetch all data from db 
function ambil_data(){ 
    $all_files = $this->db->get('laporan'); 
    return $files_pics->result(); 
} 

//save datadata to db 
function simpan_data($data){ 
    $insert_data['program'] = $data['program']; 
    $insert_data['file_nilai'] = $data['file_nilai']; 
    $insert_data['file_absen'] = $data['file_absen'];  


    $query = $this->db->insert('laporan', $insert_data); 
} 

<div class="form-group"> 
 
    <label for="file_nilai">File Nilai*:</label> 
 
    <input type="file" name="file_nilai" class="form-control" id="file_nilai"> 
 
    </div> 
 
    <div class="form-group"> 
 
    <label for="file_absen">File Absen*:</label> 
 
    <input type="file" name="file_absen" class="form-control" id="file_absen"> 
 
    </div>

+0

$ upload_data配列を投稿できますか?エコー '

'; print_r($upload_data); echo '
'; – TigerTiger

答えて

1

あなただけにあなたの条件を書き換えることができます:

public function file_data() { 

    $data['program'] = $this->input->post('program'); 
    $this->load->library('upload'); 

    $config['upload_path'] = './uploaded_files/laporan/absen'; 
    $config['allowed_types'] = 'pdf'; 

    $this->upload->initialize($config); 
    if (!$this->upload->do_upload('file_absen')) { 
     $error = array('error' => $this->upload->display_errors()); 
     $this->load->view('tutor/upload_form', $error); 

    } else { 
     $upload_data_absen = $this->upload->data(); // added this.. 
     unset($config); 
     $config['upload_path'] = './uploaded_files/laporan/nilai'; 
     $config['allowed_types'] = 'xls|xlsx'; 
     $config['overwrite'] = FALSE; 
     //$config['max_size'] = '15000'; 
     $this->upload->initialize($config); 
     if (!$this->upload->do_upload('file_nilai')) { 
      $error = array('error' => $this->upload->display_errors()); 
      $this->load->view('tutor/upload_form', $error); 
     } else { 
      $upload_data_nilai = $this->upload->data(); // changed this.. 

      //get the uploaded file name 
      $data['file_absen'] = $upload_data_absen['file_name']; // changed this.. 
      $data['file_nilai'] = $upload_data_nilai['file_name']; // changed this.. 

      //store pic data to the db 
      $this->laporan_model->simpan_data($data); 
      redirect(base_url() . "tutor/laporan_np"); 
     } 
    } 
} 
+0

私は名前$ upload_dataを各条件に変更することは考えていませんでした。とてもハッスルしてくれてありがとうございます.Hasta Dhana ..これは私のための作品です:) – uchuneno

関連する問題