Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
Kelas Premium!
Belajar bikin website dari nol sekarang
Gunakan kupon "lebihcepat" untuk diskon 25%!
Bagaimana cara agar saat memasukkan barang ke keranjang hanya bisa barang dari reseller yang sama?
Saya ingin membatasi barang yang masuk ke keranjang. Hanya barang dari reseller/toko yang sama bisa masuk ke keranjang.
<?phpinclude 'koneksi.php';
$kd_barang = $_GET['id'];
$jual = $_GET['jual']; //session penjual
$redirect = $_GET['redirect'];
session_start();
if (isset($_SESSION['keranjang'])) {
$jumlah_isi_keranjang = count($_SESSION['keranjang']);
$sudah_ada = 0;
for ($a = 0; $a < $jumlah_isi_keranjang; $a++) {
// cek apakah produk sudah ada dalam keranjang
if ($_SESSION['keranjang'][$a]['barang'] == $kd_barang) {
$sudah_ada = 1;
}
}
if ($sudah_ada == 0) {
$_SESSION['keranjang'][$jumlah_isi_keranjang] = array(
'barang' => $kd_barang,
'jumlah' => 1
);
}
} else {
// $_SESSION['keranjang'] = array();
// array_push($_SESSION['keranjang'], $kd_barang);
// echo "salah";
$_SESSION['keranjang'][0] = array(
'barang' => $kd_barang,
'jumlah' => 1
);
}
// print_r($sudah_ada);
// print_r($jual_id);
if ($redirect == "index") {
$r = "../index.php";
} elseif ($redirect == "detail") {
$r = "../detail.php?id=" . $kd_barang;
} elseif ($redirect == "keranjang") {
$r = "keranjang.php";
}
header("location:" . $r);
2 Jawaban:
<div>Diatas script keranjang_masukkan.php<br><br>disini keranjang.php</div><pre><?php if (isset($_GET['alert'])) { if ($_GET['alert'] == "keranjang_kosong") { echo "<div class='alert alert-danger text-center'>Tidak bisa checkout, karena keranjang belanja masih kosong. <br/> Silahkan belanja terlebih dulu.</div>"; } } ?>
<?php if (isset($_SESSION['keranjang'])) { $jumlah_isi_keranjang = count($_SESSION['keranjang']); if ($jumlah_isi_keranjang != 0) { ?> <table class="table table-bordered"> <thead> <tr> <th>Gambar</th> <th>Nama Barang</th> <th>Harga</th> <th>Jumlah</th> <!-- <th>Warna</th> --> <th>Total Harga</th> <th>Aksi</th> </tr> </thead> <tbody>
<?php // cek apakah produk sudah ada dalam keranjang $jumlah_total = 0; $total = 0;
for ($a = 0; $a &lt; $jumlah_isi_keranjang; $a++) {
$kd_barang = $_SESSION['keranjang'][$a]['barang'];
$jml = $_SESSION['keranjang'][$a]['jumlah'];
$isi = mysqli_query($koneksi, "SELECT * from barang where kd_barang='$kd_barang'");
$i = mysqli_fetch_assoc($isi);
$stok = $i['stok'];
$total += $i['harga'] * $jml;
$jumlah_total += $total;
?> <style> .thumb>img { width: 50px; } </style> <tr> <td class="thumb"> <?php if ($i['gambar'] == "") { ?> <img src="../assets/image/barang/produk.png"> <?php } else { ?> <img src="../assets/image/barang/<?= $i['gambar']; ?>"> <?php } ?> </td> <td class="details"> <a href="../detail.php?id=<?php echo $i['kd_barang'] ?>"><?php echo $i['nama_barang'] ?></a> </td> <td class="price text-center"><strong><?php echo "Rp. " . number_format($i['harga']) . " ,-"; ?></strong></td>
&lt;td class="qty text-center"&gt;
&lt;input class="harga" id="harga_&lt;?php echo $i['kd_barang'] ?&gt;" type="hidden" value="&lt;?php echo $i['harga']; ?&gt;"&gt;
&lt;input name="barang[]" value="&lt;?php echo $i['kd_barang'] ?&gt;" type="hidden"&gt;
&lt;input style="text-align:center" max="&lt;?= $stok ?&gt;" class="input jumlah" name="jumlah[]" id="jumlah_&lt;?php echo $i['kd_barang'] ?&gt;" nomor="&lt;?php echo $i['kd_barang'] ?&gt;" type="number" value="&lt;?php echo $_SESSION['keranjang'][$a]['jumlah']; ?&gt;" min="1" required&gt;
&lt;/td&gt;
&lt;!-- &lt;td class="text-center" id="warna"&gt;&lt;?php echo $i['warna'] ?&gt;&lt;/td&gt; --&gt;
&lt;td class="total text-center"&gt;&lt;strong class="total_harga" id="total_&lt;?php echo $i['kd_barang'] ?&gt;"&gt;&lt;?php echo "Rp. " . number_format($total) . " ,-"; ?&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td class="text"&gt;&lt;a class="main-btn" href="keranjang_hapus.php?id=&lt;?php echo $i['kd_barang']; ?&gt;&amp;redirect=keranjang"&gt;&lt;i class="fa fa-trash"&gt;&lt;/i&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;?php
$total = 0;
}
?>
</tbody> <tfoot> <tr> <th class="empty" colspan="4"></th> <th>TOTAL</th> <th colspan="2" class="sub-total"><?php echo "Rp. " . number_format($jumlah_total) . " ,-"; ?></th>
</tr> </tfoot> </table> <?php } else {
echo "&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;h3&gt;&lt;center&gt;Keranjang Masih Kosong. Yuk &lt;a href='../index.php'&gt;pesan&lt;/a&gt; !&lt;/center&gt;&lt;/h3&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;";
}
} else {
echo "&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;h3&gt;&lt;center&gt;Keranjang Masih Kosong. Yuk &lt;a href='../index.php'&gt;pesan&lt;/a&gt; !&lt;/center&gt;&lt;/h3&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;";
}
?&gt;</pre>
<div>Coba post juga struktur tabelnya. Tapi logika umumnya, produk itu kan nanti ada yang jual (seller), maka gambaran saya mungkin seperti ini di table produknya:<br><br></div><pre>* Tabel produk :
- id_produk
- nama_produk
- harga_produk
- id_penjual
- Tabel keranjang
- id_keranjang
- id_produk
- dll</pre><div><br>Maka, mungkin bisa di validasinya berdasarkan id_penjual nya, mungkin alur atau stepnya bisa sperti ini :<br>1) User memilih produk, ketika klik beli, masukkan ke dalam keranjang.<br>2) Jika user menambah produk baru lagi ke keranjang, cek data produk yang ada dikeranjang, siapa sellernya, <br>3) Cek juga produk baru yang akan dimasukkan ke keranjang, siapa sellernya,<br>4) Jika sellernya sama, lanjut masukkan ke keranjang, jika tidak sama, maka batal masukkan ke keranjang.<br><br>Semoga membantu.</div>
Tanggapan
Oke gan sudah solved, buat if lagi dibawah for untuk cek id seller