Haloo! Selamat Datang di Komunitas Private Training Web Development (56170 Members, 643 Products, 4497 Topic, 11868 Comments)

Butuh karyawan baru? atau seorang Web Developer (Part-time/Freelance/Full-time), cari disini : Members Area Jobs!

Update jumlah barang di keranjang belanja Toko Online Ci

Dibuat
Login Terakhir 7 Hari lalu,
Telah Dilihat 995 Kali
Agung Prasetyo Mengatakan : Premium
  1. Assalamualaikum Warahmatullahi Wabarakatuh...
  2.  
  3. saya mencoba membuat pengeditan jumlah baran yang mau di beli pada page
  4. http://domain/produk/keranjang
  5. tampilanya seperti pada gambar.
  6. cuman masih bingung dengan controllernya bagaimana ?
  7.  
  8. saya lampirkan file dan gambarnya
  9.  
Ada 2 File Kiriman :
1. view_keranjang.zip (1 KB)
2. edit_jumlah_beli_produk.png (25 KB)

Ada 17 Jawaban

Agung Prasetyo
commented on 12 Nov 2018 21:51:03
  1. Assalam,..
  2.  
  3. up
Agung Prasetyo
commented on 15 Nov 2018 08:30:06
  1. Assalam,..
  2. mohon bantuanya
Bukhori Muslim
commented on 17 Nov 2018 07:43:32
  1. Assalam,.. script ente salah semua gan, itu kalau dijalankan pasti error,..
  2. script keranjangnya uabh menjadi seperti ini,...
  3.  
  4. <p class='sidebar-title'> Berikut Data Pesanan anda</p>
  5. <?php
  6. if ($record->num_rows() == '0'){
  7. echo "<center style='padding:15%'><i class='text-danger'>Maaf, Keranjang belanja anda saat ini masih kosong,...</i><br>
  8. <a class='btn btn-warning btn-sm' href='".base_url()."produk'>Klik Disini Untuk mulai Belanja!</a></center>";
  9. }else{
  10. ?>
  11. <table class="table table-striped table-condensed">
  12. <thead>
  13. <tr bgcolor='#e3e3e3'>
  14. <th width='47%'>Nama Produk</th>
  15. <th>Harga</th>
  16. <th>Qty</th>
  17. <th>Berat</th>
  18. <th>Total</th>
  19. <th></th>
  20. </tr>
  21. </thead>
  22. <tbody>
  23. <?php
  24. echo "<form action='".base_url()."produk/keranjang' method='POST'>";
  25. $no = 1;
  26. foreach ($record->result_array() as $row){
  27. $sub_total = (($row['harga_jual']-$row['diskon'])*$row['jumlah']);
  28. if ($row['diskon']!='0'){ $diskon = "<del style='color:red'>".rupiah($row['harga_jual'])."</del>"; }else{ $diskon = ""; }
  29. if (trim($row['gambar'])==''){ $foto_produk = 'no-image.png'; }else{ $foto_produk = $row['gambar']; }
  30. echo "<tr><input type='hidden' name='id_produk$no' value='$row[id_produk]'>
  31. <td class='valign'><a href='".base_url()."produk/detail/$row[produk_seo]'>$row[nama_produk]</a></td>
  32. <td class='valign'>".rupiah($row['harga_jual']-$row['diskon'])." $diskon</td>
  33. <td class='valign'><input type='number' name='qty$no' value='$row[jumlah]'></td>
  34. <td class='valign'>".($row['berat']*$row['jumlah'])." Gram</td>
  35. <td class='valign'>Rp ".rupiah($sub_total)."</td>
  36. <td class='valign' width='30px'><a class='btn btn-danger btn-xs' title='Delete' href='".base_url()."produk/keranjang_delete/$row[id_penjualan_detail]'><span class='glyphicon glyphicon-remove'></span></a></td>
  37. </tr>";
  38. $no++;
  39. }
  40. $total = $this->db->query("SELECT sum((a.harga_jual*a.jumlah)-(b.diskon*a.jumlah)) as total, sum(b.berat*a.jumlah) as total_berat FROM `rb_penjualan_temp` a JOIN rb_produk b ON a.id_produk=b.id_produk where a.session='".$this->session->idp."'")->row_array();
  41. echo "<tr class='success'>
  42. <td colspan='4'><b>Subtotal </b> <i class='pull-right'>(".terbilang($total['total'])." Rupiah)</i></td>
  43. <td><b>Rp ".rupiah($total['total'])."</b></td>
  44. <td></td>
  45. </tr>
  46.  
  47. <tr class='success'>
  48. <td colspan='4'><b>Berat</b> <i class='pull-right'>(".terbilang($total['total_berat'])." Gram)</i></td>
  49. <td><b>$total[total_berat] Gram</b></td>
  50. <td></td>
  51. </tr>
  52. </tbody>
  53. </table>
  54.  
  55. <a class='btn btn-success btn-sm' href='".base_url()."produk'>Lanjut Belanja</a>
  56. <a class='btn btn-primary btn-sm' href='".base_url()."produk/checkouts'>Selesai Belanja</a>
  57. <button class='btn btn-warning btn-sm' type='submit' name='update'>Update Belanja</button>
  58. </form>";
  59.  
  60. $ket = $this->db->query("SELECT * FROM rb_keterangan")->row_array();
  61. echo "<hr><br>$ket[keterangan]";
  62. }
  63.  
  64. Lalu di controller Produk.php -> function keranjang() tambahkan script untuk update data ke database :
  65. if (isset($_POST['update'])){
  66. $jml = $this->db->query("SELECT * FROM rb_penjualan_temp where session='".$this->session->idp."'")->num_rows();
  67. for ($i=0; $i<=$jml; $i++){
  68. if (isset($_POST['id_produk'.$i])){
  69. $id_produk = $_POST['id_produk'.$i];
  70. $qty = $_POST['qty'.$i];
  71. $data = array('jumlah'=>$qty);
  72. $where = array('id_produk'=>$id_produk,'session'=>$this->session->idp);
  73. $this->model_app->update('rb_penjualan_temp', $data, $where);
  74. }
  75. }
  76. redirect('produk/keranjang');
  77. }
Muhammad Hafiz Akbar Al-Ghifari
commented on 18 Nov 2018 12:55:05
  1. Assalam,.. Saya sudah coba, tapi kenapa stock produk tidak berkurang ya?
Muhammad Hafiz Akbar Al-Ghifari
commented on 18 Nov 2018 21:23:32
  1. Assalam,.. maaf, maksud saya: Ketika diupdate total barang yang dibeli dan melebihi stock yang ada, tidak ada notifikasi jika stock tidak mencukupi. Bagaimana cara untuk memasang scriptnya?
Bukhori Muslim
commented on 19 Nov 2018 06:16:20
  1. Assalam,.. Stok akan berkurang jika status pesanan sudah diganti menjadi "Proses" dari halaman admin,.. ^_^
Agung Prasetyo
commented on 19 Nov 2018 06:28:37
  1. Assalam,..
  2. Owh iya pak bener. Ternyata saat updat jumlah barang tidak ada notifikasi kalau barang yang di beli itu melebihi stok.
  3.  
  4. Misal stok barang 10pcs. Ada konsumen yang membelinya 2pcs kemudian di keranjang di update menjadi 12pcs. Maka notifikasi melebihi stok tidak muncul pak
Agung Prasetyo
commented on 19 Nov 2018 07:44:21
  1. Assalam,..
  2. mohon bantuanya pak,
Muhammad Hafiz Akbar Al-Ghifari
commented on 23 Nov 2018 23:47:15
  1. Assalam,.. Mohon pencerahannya... Sudah saya coba, tapi masih juga gagal :(
Bukhori Muslim
commented on 24 Nov 2018 06:33:35
  1. Assalam,.. "Agung Prasetyo"
  2. itu kan tinggal cek stok saja mak ee di proses update perbarangnya,
  3. <?php
  4. if (isset($_POST['update'])){
  5. $jml = $this->db->query("SELECT * FROM rb_penjualan_temp where session='".$this->session->idp."'")->num_rows();
  6. for ($i=0; $i<=$jml; $i++){
  7. if (isset($_POST['id_produk'.$i])){
  8. $id_produk = $_POST['id_produk'.$i];
  9. $qty = $_POST['qty'.$i];
  10.  
  11. $j = $this->model_app->jual_umum($id_produk)->row_array();
  12. $b = $this->model_app->beli_umum($id_produk)->row_array();
  13. $c = $this->model_app->jumlah_return($id_produk)->row_array();
  14. $stok = $b['beli']-$j['jual']+$c['jumlah_return'];
  15. if ($qty<=$stok){
  16. $data = array('jumlah'=>$qty);
  17. $where = array('id_produk'=>$id_produk,'session'=>$this->session->idp);
  18. $this->model_app->update('rb_penjualan_temp', $data, $where);
  19. }
  20. }
  21. }
  22. redirect('produk/keranjang');
  23. }
Bukhori Muslim
commented on 24 Nov 2018 06:34:32
  1. Assalam,.. "Muhammad Hafiz Akbar Al-Ghifari"
  2. Gagal dibagian apa nya gan?
Agung Prasetyo
commented on 24 Nov 2018 08:36:22
  1. Assalam,..
  2. $c = $this->model_app->jumlah_return($id_produk)->row_array();
  3.  
  4. jumlah_return itu tidak ada di model_app pak
Agung Prasetyo
commented on 24 Nov 2018 08:51:32
  1. Assalam,..
  2. mucun ini pak kalau ditambahkan ini
  3. $c = $this->model_app->jumlah_return($id_produk)->row_array();
Terdapat 1 File dilampirkan :
1. error28.png (18 KB)
Muhammad Hafiz Akbar Al-Ghifari
commented on 24 Nov 2018 09:06:36
  1. Assalam,.. Ketika update produk di page keranjang tidak ada notifikasi jika stok tidak mencukupi....
  2.  
  3. Misal:
  4. Stok tersedia adalah 5
  5.  
  6. Di produk detail jika pembeli memesan lebih dari 5 maka akan ada notifikasi jika stok tidak mencukupi.
  7. Problem: Ketika sudah di page keranjang, ternyata konsumen update stok pemesanannya menjadi lebih dari 5 (kasus jika konsumen lupa stok yang tersedia), namun tidak ada notifikasi jika stok tidak mencukupi. Padalah stok tersedia hanya 5.
  8.  
  9. Saya lampirkan filenya... Mohon solusinya Mas Bukhori.
Terdapat 1 File dilampirkan :
1. function_keranjang.zip (1 KB)
Agung Prasetyo
commented on 24 Nov 2018 09:08:29
  1. Assalam,..
  2. jumlah_return ini maksutnya apa ya ?
Doni Syahroni
commented on 25 Nov 2018 13:48:43
  1. Assalam,..
  2. sudah ada belum function jumlah_return ($id_produk) di file model nya ?
  3. itu error karena page nya tidak di temukan
Agung Prasetyo
commented on 25 Nov 2018 14:06:51
  1. Assalam,..
  2. belum ada di model_app
  3.  
  4. makanya saya tanyakan maksut dari jumlah_return itu maksutnya apa ?
Maaf, Untuk Memberikan Komentar Anda Harus Login !!!