CARA UPDATE DATA LEBIH DARI 1 DENGAN KODE_ID YANG SAMA

Mohon bantuannya suhu,saya mempuyai tabel "tbl_pengajuan", cara kerja nya mengajukan barang

pertayaan: bagaimana caranya mengupdate data lebih dari satu dengan kode pengajuan yang sama

contoh script:

<?php 

    if (isset($_POST['acc_semua'])) {

        $tgl_acc = date("Y-m-d");
       
        $barcode = $_POST['kode_barang'];
         
        $sql_barang2 = $koneksi->query("select * from tb_barang2 where kode_barang = '$barcode'");
         $data_barang2=$sql_barang2->fetch_assoc();

        $jumlah = $_POST['jumlah'];
        $kode_pj = $_POST['kode_pengajuan'];

        $sql_barang = $koneksi->query("select * from tb_barang2 where kode_barang = '$barcode'");
        while ($data_barang = $sql_barang->fetch_assoc()) {
            $sisa = $data_barang['stok'];

            if ($sisa == 0) {
                ?>
          <script type="text/javascript">
                        alert("Stok Barang Habis, Permintaan Tidak Dapat Di Proses ");
                        window.location.href="?page=mengajukan";
                    </script>
      <?php

            }else{


                 if ($jumlah > $sisa) {
                  ?>
          <script type="text/javascript">
                        alert("Jumlah Melebihi Stok, Silakan Input Ulang");
                        window.location.href="?page=mengajukan";
                    </script>
      <?php
            }else{

              $sql_pj = $koneksi->query("select * from tbl_pengajuan where kode_pengajuan = '$kode_pj' and kode_barang='$barcode'");
         while ($data_pj = $sql_pj->fetch_assoc()) {
        
         $kode_br = $data_pj['kode_barang'];

         $jumlah_br = $data_pj['jumlah'];
        $total_br = $data_pj['total'];
        $stok_br = $data_pj['stok'];
        $id_br = $data_pj['id'];
        $status = $data_pj['status'];
        $kode_pj = $_POST['kode_pengajuan'];
         }

         if ($kode_br == $barcode) {

      
       $sql = $koneksi->query("update tb_barang2 set stok=(stok - $jumlah) where kode_barang='$kode_br'");
     
    $sql = $koneksi->query("update tbl_pengajuan set status='disetujui' where kode_pengajuan='$kode_pj'");
        $sql = $koneksi->query("update tbl_pengajuan set tgl_acc='$tgl_acc' where kode_pengajuan='$kode_pj'");

            if ($sql) {
            ?>
           <script>
              setTimeout(function() {
                  swal({
                      title: "SUCCESS",
                      text: "PENGAJUAN DI SETUJUI",
                      type: "success"
                  }, function() {

                     window.location = "?page=mengajukan&aksi=cek&kode_pengajuan=<?php echo $kode_pengajuan; ?>";
                  });
              }, 300);
          </script>
          
         <?php } } } } } } ?>

barang yang di ajukan terlebih dulu dicek,akan tetapi jika pengajuan nya lebih dari 1 dengan kode_pengajuan yang sama hanya satu saja yang diupdate...data yang lainnya tidak terupdate padahal dengan kode_pengajuan yang sama

mohon bantuanny suhu

avatar bento94
@bento94

9 Kontribusi 0 Poin

Diperbarui 5 bulan yang lalu

1 Jawaban:

// Ambil data kode_pengajuan
$kode_pj = $_POST['kode_pengajuan'];

// Ambil semua data pengajuan dengan kode yang sama
$sql = "SELECT * FROM tbl_pengajuan WHERE kode_pengajuan='$kode_pj'";
$query = $koneksi->query($sql);

// Looping update semua data 
while($data_pj = $query->fetch_assoc()){

  // Ambil data masing-masing baris
  $id = $data_pj['id']; 
  $kode_br = $data_pj['kode_barang'];
  $jumlah = $data_pj['jumlah'];

  // Update data masing-masing baris
  $sql1 = "UPDATE tbl_pengajuan SET status='disetujui', tgl_acc='$tgl_acc' WHERE id='$id' AND kode_pengajuan='$kode_pj'";  
  $update = $koneksi->query($sql1);

  // Update stok barang
  $sql2= "UPDATE tb_barang2 SET stok=stok-$jumlah WHERE kode_barang='$kode_br'";
  $update = $koneksi->query($sql2);

}

Jadi looping semua data pengajuan dengan kode yang sama, lalu update data dan stok masing-masing baris. Dengan begini semua data dengan kode pengajuan yang sama akan terupdate.

avatar adamajalah27
@adamajalah27

119 Kontribusi 40 Poin

Dipost 5 bulan yang lalu

Tanggapan

terima kasih suhu

Login untuk ikut Jawaban