Tolong pilih kategori sesuai, jenis posting (pertanyaan atau bukan) dan sertakan tag/topik yang sesuai misal komputer, php, mysql, dll.
Promosi atau posting tidak pada tempatnya akan kami hapus.
Mencantumkan kode program di posting Anda, tolong ikuti aturan yang sesuai, baca http://diskusiweb.com/discussion/39204/aturan-cara-menyisipkan-kode-program-di-diskusiweb

Baca cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

Jumlah pinjam tidak boleh lebih dari stok barang di CodeIgniter

Baaang bang, mau tanya doang cara biar jumlah barang yang dipinjam tidak boleh lebih dari stok barang yang ada.
Saya punya 2 tabel yaitu tabel barang yang isinya ada jumlah_barang, dan tabel peminjaman yang isinya ada jumlah_pinjam.

Nah dari situ gimana caranya pas di form pinjam barang ada validasi yang menyatakan jumlah_pinjam tidak boleh lebih dari jumlah_barang.

Kalau untuk pengurangannya saya pakai metode trigger, tapi jika pinjam barangnya lebih besar itu tetep bisa, saya tanya sana sini katanya pake ajax bisa tuh, ketika pilih barang berubah. ambil valuenya.
terus ajax dengan parameter id barangnya. cek ke db sisa stock nya berapa, terus itu di jadiin limit. ketika jumlah pinjam change di check apakah melebihi sisa stock, kalau iya di kasih alert (melebihi sisa stock).

Naaah tapi saya ga ngerti cara penerapannya. Mungkin kalau ada cara lain begimana bang?
<div class="form-group">
<label for="int">Jumlah Pinjam (tidak boleh lebih dari stok) <?php echo form_error('jumlah_pinjam') ?></label>
<input type="number" max=10 class="form-control" name="jumlah_pinjam" id="jumlah_pinjam" placeholder="Jumlah Pinjam" value="<?php echo $jumlah_pinjam; ?>" />
</div>
< /pre>
Bantuannya baaang :D

Tanggapan

  • Coba bantu ya bro,
    1. Pilih barang pake select ? klo ia, pake event .change(...)
    2. Klo gw pake JSON & get buat ambil sisa stock dari db berdasarkan id barang yg di select.
    3. Masukin sisa stock tadi ke hidden form input text
    4. Di formnya pake onsubmit() buat validasi inputan user (jumlah barang yang dipinjam vs sisa stock)
    5. Selesai o:)
  • edited September 27
    @susantoan Saya coba kasih contoh Ajax, semoga dapat di pahami.
    //Notice : Lokasi penempataan file bisa di ganti berdasarkan url pada function checkQuantity. Untuk contoh ini file 1 & 2(yakni check_qty_db.php) di tempatkan di lokasi yang sama. 
     
    Case : Check quantity buku tulis di database.
    // File 1
    //Set Script
    script src="https://code.jquery.com/jquery-2.1.1.min.js"; type="text/javascript" /script
    <script>
    function checkQuantity() {
    jQuery.ajax({
     
    // Set lokasi pengechekan qty di file check_qty_db.php
    url: "check_qty_db.php",
     
    // Set data yang akan di POST/dikirim ke file check_qty_db.php
    data:{qty:$("#qty").val(), buku:document.getElementById('buku').textContent},
     
    // Set type yang digunakan POST
    type: "POST",
     
    // Jika Berhasil
    success:function(data){
    // ketika berhasil di file check_qty_db.php akan mengirimkan data kembali ke file 1 yang kemudian di set di id status.
    $("#status").html(data);
    },
     
    // Jika Gagal/Error
    error:function (){}
    });
    }
    </script>
    //tambahkan < & >
    label Check Username: /label
     
    //Input dengan id qty dan menggunakan effect onBlur
    label id="buku" buku tulis /label
    input name="qty" type="text" id="qty" onBlur="checkQuantity()"
     
    //berfungsi untuk menampilkan apakah qty yang diminta melebihi/tidak
    span id="status" /span
     
    // ------------------------------------------------------
     
    File 2 (check_qty_db.php)
     
    //Set koneksi database
    $server = 'localhost';
    $user = 'root';
    $pass = '';
    $db = 'DATABASE';
     
    $connection = mysql_connect($server,$user,$pass);
    $db = mysql_select_db($db);
     
    // Mengambil data yang di post dari file 1
    if(!empty($_POST["qty"])) {
     
    // CHECK DI DATABASE
    $result = mysql_query("SELECT QUANTITY FROM TABLE WHERE product = '" . $_POST["buku"] . "'");
    $row = mysql_fetch_row($result);
     
    $qty_db = $row[0];
    $qty_usr = $_POST["qty"];
     
    if($qty_usr > $qrt_db) {
    echo "<span> QUANTITY TIDAK CUKUP</span>";
    }
     
    }

Sign In or Register to comment.