2017-01-27 2 views
0

Я хочу обновить свои данные на mysql со структурой | nip | Нама | path1 | path2 |Код Igniter Cant загрузить файл

я хочу изменить, загруженное имя файла это мой вид кода

<form class="form-horizontal" method="post" action="<?php echo base_url()?>index.php/c_main/uploadFile" enctype="multipart/form-data"> 
    <div class="form-group"> 
    <label for="exampleInputFile">Berkas 1</label> 
      <input type="hidden" name="nip" id="nipUpload" value=""> 
      <input type="file" class="filestyle" name="berkas[]" data-buttonText="Find file" id="berkas[]"> 
      <p class="help-block">Example block-level help text here.</p> 
    </div> 
    <div class="form-group"> 
      <label for="exampleInputFile">Berkas 2</label> 
      <input type="file" class="filestyle" name="berkas[]" data-buttonText="Find file" id="berkas[]"> 
      <p class="help-block">Example block-level help text here.</p> 
    </div> 

      <div class="row"> 
       <button type="submit" class="btn btn-default">Upload File</button> 
      </div> 
</form> 

this is my controller code 

function uploadFile() 
     { 
      $nip = $_POST['nip']; 

      $number_of_files = sizeof($_FILES['berkas']['tmp_name']); 

      $cek = 0; 
      for($i=0;$i<$number_of_files;$i++) 
      { 
       $namaBerkas[$i] = $nip."-".($i+1).".jpg"; 

       $config['upload_path']   = base_url().'assets/upload/'; 
       $config['allowed_types']  = 'gif|jpg|png'; 
       $config['max_size']    = 1000; 
       $config['max_width']   = 2024; 
       $config['max_height']   = 1200; 
       $config['file_name']   = $namaBerkas; 

       $this->load->library('upload', $config); 
       // $this->upload->initialize($config); 

       if ($this->upload->do_upload()){ 
        $cek = $cek +1; 
       } 
       print_r($config); 
       echo $cek; 
       die(); 

      } 

      if($cek == 2){ 
       if($this->m_main->uploadFile($nip,$namaBerkas[0],[1])){ 
        echo "<script> alert ('Upload Berkas Berhasi!');</script>"; 
        redirect('admin/C_main/beranda'); 
       } 
      } 

     } 

это моя модель

function upload_file($nip, $berkas1, $berkas2){ 
      $sql = "update daftar set PATH1 = $berkas1, PATH2 = $berkas2 WHERE NIP = $nip"; 
      return $this->db2->query($sql); 
     } 

выход кода выше: Вы не выбрали файл для загрузки ,

+0

Инициализировать загрузку. remove // ​​on $ this-> upload-> initialize ($ config); – Ritchie

+0

уже попробовал, но все же получил тот же результат: «вы не выбрали файл для загрузки». @Ritchie –

+0

что ваш запрос печатает? –

ответ

0

Я думаю, проблема в том, что у вас есть два одинаковых поля формы. Попробуйте

<form class="form-horizontal" method="post" action="<?php echo base_url()?>index.php/c_main/uploadFile" enctype="multipart/form-data"> 
<div class="form-group"> 
<label for="exampleInputFile">Berkas 1</label> 
<input type="hidden" name="nip" id="nipUpload" value=""> 
<input type="file" class="filestyle" name="berkas[]" data-buttonText="Find file" id="berkas[]"> 
<p class="help-block">Example block-level help text here.</p> 
</div> 
<div class="row"> 
<button type="submit" class="btn btn-default">Upload File</button> 
</div> 
</form> 
+0

Я хочу загрузить 2 файла и вставить в поле в таблице где таблица структура | NIP | ИМЯ | PATH1 | PATH2 | –

+0

выберите несколько файлов, выполните цикл. Используйте $ _FILES ["berkas"] ['name'], чтобы получить имя файла и pathinfo ($ _ FILES ["berkas"] ['name'], PATHINFO_EXTENSION); для получения расширения файла. которые должны работать. удалить комментарий в $ this-> upload-> initialize ($ config); – Ritchie

0
<form class="form-horizontal" method="post" action="<?php echo base_url()?>index.php/c_main/uploadFile" enctype="multipart/form-data"> 
    <div class="form-group"> 
    <label for="exampleInputFile">Berkas 1</label> 
      <input type="hidden" name="nip" id="nipUpload" value=""> 
      <input type="file" class="filestyle" name="berkas" data-buttonText="Find file" id="berkas"> 
      <p class="help-block">Example block-level help text here.</p> 
    </div> 
    <div class="form-group"> 
      <label for="exampleInputFile">Berkas 2</label> 
      <input type="file" class="filestyle" name="berkas1" data-buttonText="Find file" id="berkas1"> 
      <p class="help-block">Example block-level help text here.</p> 
    </div> 

      <div class="row"> 
       <button type="submit" class="btn btn-default">Upload File</button> 
      </div> 
</form> 

Conrtoller

function uploadFile() 
     { 
      $nip = $_POST['nip']; 

      $number_of_files = sizeof($_FILES['berkas']['tmp_name']); 

      $cek = 0;     
      $namaBerkas = $nip."-".1.".jpg"; 

       $config['upload_path']   = base_url().'assets/upload/'; 
       $config['allowed_types']  = 'gif|jpg|png'; 
       $config['max_size']    = 1000; 
       $config['max_width']   = 2024; 
       $config['max_height']   = 1200; 

       $config['file_name']   = $namaBerkas; 

       $this->load->library('upload', $config); 
       // $this->upload->initialize($config); 

       if ($this->upload->do_upload('berkas')){ 
        $cek = $cek +1; 
       } 

       $namaBerkas1 = $nip."-".2.".jpg"; 
       $config['file_name'] = $namaBerkas1; 
       if ($this->upload->do_upload('berkas1')){ 
        $cek = $cek +1; 
       } 

       print_r($config); 
       echo $cek; 
       die(); 



      if($cek == 2){ 
       if($this->m_main->uploadFile($nip,$namaBerkas[0],[1])){ 
        echo "<script> alert ('Upload Berkas Berhasi!');</script>"; 
        redirect('admin/C_main/beranda'); 
       } 
      } 

     } 
+0

Спасибо за ваш ответ, но он все еще не работает, Я попытался напечатать $ cek, но его значение все равно 0. Я думаю, что проблема в этом коде «$ this-> upload-> doUpload()», потому что значение из $ cek не изменяется, но я не знаю, что не так с кодом. –

+0

Вы изменили $ this-> upload-> doUpload() на $ this-> upload-> doUpload ('berkas')? –