Cara upload dua gambar di model codeigniter

Mohon bantuannya, saya sudah mencari dan bongkar2 google tapi gak nemu codingan yg pas/sesuai dengan source code yg saya miliki.. kalau harus mengikuti codingan yg ada di google berarti harus rombak semua codingan dari nol :((.

Yang saya mau disini adalah modifikasi sedikit dari codingan yg ada agar dapat insert file name dua gambar ke database mysql, dan menyimpannya ke dalam folder.

Codingan di bawah banyak yg saya hapus yg tidak perlu agar bisa fokus ke insert gambar saja (upload foto barang & upload foto bukti transfer).

Terimakasih banyak bagi master2 sekalian yg berkenan membantu :)

berikut ini codingannya: (CONTROLLER)

public function create(){
  if(!isset($_POST)) {
     show_404();
  }

  if($this->pinjaman_m->create()){
     echo json_encode(array('ok' => true, 'msg' => '<div class="text-green"><i class="fa fa-check"></i> Data berhasil disimpan </div>'));
  } else {
     echo json_encode(array('ok' => false, 'msg' => '<div class="text-red"><i class="fa fa-ban"></i> Gagal menyimpan data, pastikan nilai lebih dari <strong>0 (NOL)</strong>. </div>'));
  }
}

(MODEL)

public function create() {

 $data = array(
	'tgl_pinjam' =>	$this->input->post('tgl_pinjam'),
	'anggota_id' =>	$this->input->post('anggota_id'),
        //'upload_foto_barang' 	  => $this->upload->do_upload(['file']['file_name'])
        //'upload_bukti_transfer' => $this->upload->do_upload(['file']['file_name'])
	);

 $this->db->insert('tbl_pinjaman_h', $data);
}


(VIEW)

<div id="dialog-form" class="easyui-dialog" show= "blind" hide= "blind" modal="true" resizable="false" closed="true" buttons="#dialog-buttons" style="display: none;">

<form id="form" method="post" enctype="multipart/form-data" novalidate>
<table>
 <tr >
  <td>Tanggal Pinjam</td>
  <td>:</td>
  <td>
    <input type="text" name="tgl_pinjam_txt" id="tgl_pinjam_txt" />
  </td>
 </tr>
 <tr style="height:35px">
  <td>Nama Anggota</td>
  <td>:</td>
  <td>
    <input id="anggota_id" name="anggota_id" style="width:195px; height:25px" class="easyui-validatebox" required="true" >
  </td>
 </tr>
 <tr style="height:35px">
  <td>Upload Foto Barang</td>
  <td>:</td>
  <td>
    <input type="file" id="upload_foto_barang" name="upload_foto_barang" style="width:195px; height:25px; margin-bottom: 5px; margin-top:5px;" >
  </td>
 </tr>
 <tr style="height:35px">
  <td>Upload Bukti Transfer</td>
  <td>:</td>
  <td>
    <input type="file" id="upload_bukti_transfer" name="upload_bukti_transfer" style="width:195px; height:25px; margin-bottom: 5px; margin-top:5px;" >
  </td>
 </tr>
</table>
</form>
</div>

<script type="text/javascript">
var url;
function save() {
  var string = $("#form").serialize();
  //validasi teks kosong
  var anggota_id = $("input[name=anggota_id]").val();
  if(anggota_id == '') {
  $.messager.show({
  title:'<div><i class="fa fa-warning"></i> Peringatan ! </div>',
  msg: '<div class="text-red"><i class="fa fa-ban"></i> Maaf, Anggota belum dipilih. </div>',
  timeout:2000,
  showType:'slide'
  });
  $("#anggota_id").focus();
  return false;
}

  var barang_id = $("#barang_id option:selected").val();
  if(barang_id == "0" || barang_id == "") {
  $.messager.show({
  title:'<div><i class="fa fa-warning"></i> Peringatan ! </div>',
  msg: '<div class="text-red"><i class="fa fa-ban"></i> Maaf, Barang belum dipilih. </div>',
  timeout:2000,
  showType:'slide'
  });
  $("#barang_id").focus();
  return false;
}
.
.
.
.

$.ajax({
type	: "POST",
url: url,
data	: string,
success	: function(result) {
var result = eval('('+result+')');
$.messager.show({
title:'<div><i class="fa fa-info"></i> Informasi</div>',
msg: result.msg,
timeout:2000,
showType:'slide'
});
if(result.ok) {
jQuery('#dialog-form').dialog('close');
$('#dg').datagrid('reload');
}
}
});
}
</script>

avatar danielf
@danielf

4 Kontribusi 2 Poin

Diperbarui 4 tahun yang lalu

3 Jawaban:

Jawaban Terpilih

coba pake formdata <pre> var string = $("#form").serialize(); //ganti dengan ini var string = new FormData($("#form")[0]); </pre>

avatar dianarifr
@dianarifr

642 Kontribusi 316 Poin

Dipost 4 tahun yang lalu

masih blm bisa kak, susah krn gada pesan error:((

avatar danielf
@danielf

4 Kontribusi 2 Poin

Dipost 4 tahun yang lalu

coba pada model/controller create, var_dump file upload <pre> var_dump($_FILES['upload_foto_barang']); var_dump($_FILES['upload_bukti_transfer']); // atau var_dump($this-&gt;upload-&gt;do_upload('upload_foto_barang')); var_dump($this-&gt;upload-&gt;do_upload('upload_bukti_transfer')); </pre>

avatar dianarifr
@dianarifr

642 Kontribusi 316 Poin

Dipost 4 tahun yang lalu

Login untuk ikut Jawaban