2017-12-15 11 views
0

두 개의 입력 파일을 사용하여 다른 파일 형식을 업로드 할 수 있습니까? 두 개의 입력으로 양식 업로드를 만들었는데 다른 이름으로 다른 파일을 업로드 한 경우에도 왜 파일 이름이 같은지 혼란 스럽습니다. 이 내 모델입니다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