220061
Well-Known Coder
hello I'm creating a shopping cart with an array but it doesn't keep the selected item in cart. how do I keep it in the cart?
PHP:
<?php
error_reporting(E_ALL);
ini_set('display_errrors', '1');
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Cart</title>
<!-- Favicon-->
<link rel="icon" type="image/x-icon" href="assets/favicon.ico" />
<!-- Bootstrap icons-->
<link href="https://cdn.jsdelivr.net/npm/[email protected]/font/bootstrap-icons.css" rel="stylesheet" />
<!-- Core theme CSS (includes Bootstrap)-->
<link href="css/styles.css" rel="stylesheet" />
<link href="css/stylecart.css" rel="stylesheet" />
<script src="js/scripts.js" async></script>
</head>
<style>
body {
font-size: 20px;
}
</style>
<body>
<a class="back" href="index.php"> ←</a>
<?php
include "config.php";
$sql = 'SELECT * FROM broodjes';
$stmt = $conn->prepare($sql);
$stmt->execute();
$result = $stmt->get_result(); // get the mysqli result
while($row = $result-> fetch_assoc()){
$_SESSION['basket'] = array();
if(isset($_POST['add_to_cart'])){
array_push($_SESSION['basket'], $row['broodjes_ID'], $row['broodnaam'], $row['prijs']);
}
}
?>
<div class="text-center" style="font-size: 100px;">🛍</div>
<h2 class="text-center">Winkelmandje</h2><br>
<section class="container content-section">
<!-- <h2 class="section-header">CART</h2> -->
<div class="cart-row">
<span class="cart-item cart-header cart-column">ITEM</span>
<span class="cart-price cart-header cart-column">PRICE</span>
<span class="cart-quantity cart-header cart-column">QUANTITY</span>
</div>
<?php
//misschine kan dit helpen https://stackoverflow.com/questions/35164397/php-shopping-cart-array probleem is alleen snap de code niet
// query maken waarbij wij naam en prijs ophalen van de ids.
$broodjes_ID = $_GET['broodjes_ID'];
$count = count($_SESSION['basket']); // count basket puts 3 times the same item in the shopping cart
if($count > 0){
$sum = 0;
for($i = 0; $i<$count; $i++){
//$basket = $_SESSION['basket'][$i];
$sql = "SELECT broodjes_ID, broodnaam, prijs FROM broodjes WHERE broodjes_ID = ?";
// uitvoeren, resultaat tonen in tabel.
$stmt = $conn->prepare($sql);
$stmt->bind_param("i", $broodjes_ID);
$stmt->execute();
$result = $stmt->get_result(); // get the mysqli result
while($row = $result-> fetch_assoc()){
echo '<div class="cart-items">';
echo '<div class="cart-row">';
echo '<div class="cart-item cart-column">';
echo '<span class="cart-item-title">'. $row['broodnaam'] . '</span>';
echo '</div>';
echo '<span class="cart-price cart-column"> €'. $row['prijs'] . '</span>';
echo '</div>';
echo '</div>';
$sum += $row['prijs'];
}
}
?>
<div class="cart-total">
<strong class="cart-total-title">Total</strong>
<span class="cart-total-price"> € <?php echo $sum;?></span>
</div>
<?php
}else{
echo 'mandje is leeg.';
?>
<div class="cart-total">
<strong class="cart-total-title">Total</strong>
<span class="cart-total-price"> € 0</span>
</div>
<?php
}
?>
<div class="text-center">
<button class="btn btn-outline-primary" type="button"><a href="bestellen.php">PURCHASE</a></button>
</div>
</section>
</body
Last edited:



