Gimana cara menangkap nilai sebelum di eksekusi dengan codeigniter

Agan-agan saya mau tanya nih gimana cara menangkap nilai sebelum di eksekusi dengan codeigniter. jadi saya punya kasus update jumlah stok barang :

kode_brg--nama_barang--ukuran--jumlah--tgl 1--buku--pcs--10--20/08/2018

nah ketika saya mau update stok buku misal 1, database yg berubah harusnya menjadi 11. saya udh coba cara yg <a href=' https://sekolahkoding.com/forum/cara-mengurangi-jumlah-stok-barang-di-php-1531965583 '> https://sekolahkoding.com/forum/cara-mengurangi-jumlah-stok-barang-di-php-1531965583 </a> dan <a href=' http://www.diskusiweb.com/discussion/36978/penjumlahan-dan-pengurangan-stok-barang '> http://www.diskusiweb.com/discussion/36978/penjumlahan-dan-pengurangan-stok-barang </a> cuman tidak berhasil ntah scriptnya masih salah atau enggk. misal mau di jadikan script codeigniter seperti apa kodingannya. terimakasih..

kodingan model codeigniter sebelumnya seperti ini

 function uStokBrg($data = array()){
        $kode_brg = $this->input->post('kode_brg');
        $jumlah = $this->input->post('jumlah');
        $tgl = date('Y-m-d');
        $quantity_in_stock = $this->db->set('stok_brg.jumlah');
        foreach($kode_brg AS $key => $val){
            $data[] = array(
                'kode_brg' => $kode_brg[$key],
                'nama_barang' => $_POST['nama_barang'][$key],
                'ukuran' => $_POST['ukuran'][$key],
                'jumlah' => $jumlah[$key] + $quantity_in_stock,
                'tgl_masuk' => $tgl
            );
        }

            $this->db->update_batch('stok_brg', $data, 'kode_brg');

    }
avatar adjitrias
@adjitrias

7 Kontribusi 0 Poin

Diperbarui 6 tahun yang lalu

4 Jawaban:

@adjitrias

pertama ambil dulu datanya, pake query select, kalo udh tinggal tentuin stok nya mau dijumlah atau direplace.

avatar apake1
@apake1

106 Kontribusi 55 Poin

Dipost 6 tahun yang lalu

lebih baik dibuat tabel baru lagi namanya master_data_barang,

jadi gak usah repot2 update semua rownya

contoh table master_barang

id|nama | detail| 1 |buku | untuk stok barang yang berjenis buku | 2 |pulpen| Untuk Stok Barang Yang Berjenis Pulpen|

stok_brg id | kode_brg | nama_barang | ukuran | jumlah | tgl_masuk | id_master_barang 1 | 001 | Pilot | 10cm | 30 | 2012-12-12| 2 (untuk Pulpen) 2 | 002 | Faster | 10cm | 20 | 2012-11-11| 2 (untuk Pulpen)

Nah dari tabel diatas bisa di select lalu di sum

<pre> $jumlah_pulpen = $this-&gt;db-&gt;query("SELECT sum(jumlah) FROM stok_brg where id_master_barang = 2")-&gt;row();

</pre>

avatar demaram
@demaram

51 Kontribusi 33 Poin

Dipost 6 tahun yang lalu

Mau di buat batch apa cuma satu aja yang di update ceritanya ?

avatar markeronly
@markeronly

378 Kontribusi 230 Poin

Dipost 6 tahun yang lalu

@apakel, sudah sebelumnya gan. Cuman pas saya jumlahin yg di simpan ke db malah jumlah yg saya input + jumlah yg saya input..

@demaram, gk ada cara lain gan selain 1 tabel ajh utk eksekusinya? biar lebih efisien. Tp saya coba dulu ya utk cara yg agan kasih

@markeronly, di buat batch gan soalnya data yg saya input itu dinamis. Jd bisa lebih dr 1 inputan yg saya eksekusi

avatar adjitrias
@adjitrias

7 Kontribusi 0 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban