Skip to content
Snippets Groups Projects
Commit 8b37a6c7 authored by Ignacio Hernández de la Fuente's avatar Ignacio Hernández de la Fuente
Browse files
parents 0813eab3 04707c5f
No related branches found
No related tags found
No related merge requests found
<?php
session_start();
include("../connect_database.php");
// Vérifier si l'article est déjà dans le panier
if (!isset($_SESSION['panier'])) {
$_SESSION['panier'] = array();
}
$itemName = $_POST['itemName'];
$itemPrice = $_POST['itemPrice'];
$itemQuantity = $_POST['itemQuantity'];
// Vérifier si l'article est déjà dans le panier
if (array_key_exists($itemName, $_SESSION['panier'])) {
// L'article est déjà dans le panier, mettez à jour la quantité
$_SESSION['panier'][$itemId]['quantity'] += $itemQuantity;
} else {
// L'article n'est pas encore dans le panier, ajoutez-le au panier et à la base de données
$_SESSION['panier'][$itemName] = array(
'price' => $itemPrice,
'quantity' => $itemQuantity
);
}
$response = array('success' => true, 'message' => 'Article ajouté au panier avec succès');
echo json_encode($response);
?>
......@@ -321,7 +321,7 @@ include("../html/data_treatment/connect_database.php");
<!-- Portfolio Modals-->
<!-- Portfolio item 1 modal popup-->
<?php
for($i=0; $i<count($articles); $i++){
for($i=0; $i<count($articles); $i++){
?>
<div class="portfolio-modal modal fade" <?php echo 'id="portfolioModal'.$i.'"' ?> tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog">
......@@ -342,9 +342,13 @@ include("../html/data_treatment/connect_database.php");
<input type="text" value="1" <?php echo 'id="quantity"'.$i; ?>>
<button onclick="incrementQuantity(this)">+</button>
</div>
<button class="btn btn-primary btn-xl text-uppercase" type="button" <?php echo 'id = "buttonShoppingCart'.$i.'"';?>>
Add to shopping cart
</button>
<button class="btn btn-primary btn-xl text-uppercase" type="button"
data-item-id="<?php echo $i; ?>"
data-item-name="<?php echo $articles[$i]["itemName"]; ?>"
data-item-price="<?php echo $articles[$i]["price"]; ?>"
onclick="addToCart(this)">
Add to shopping cart
</button>
<script>
function incrementQuantity(button) {
......@@ -406,7 +410,6 @@ include("../html/data_treatment/connect_database.php");
</div>
</div>
</div>
</div>
<?php }; ?>
<!-- Bootstrap core JS-->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js"></script>
......@@ -419,24 +422,6 @@ include("../html/data_treatment/connect_database.php");
<script src="https://cdn.startbootstrap.com/sb-forms-latest.js"></script>
<script src="js/slideBox.js"></script>
<script>
function incrementQuantity(button) {
var input = button.parentNode.querySelector('input');
var value = parseInt(input.value, 10);
input.value = value + 1;
}
function decrementQuantity(button) {
var input = button.parentNode.querySelector('input');
var value = parseInt(input.value, 10);
if (value > 0) {
input.value = value - 1;
}
}
function removeProduct(button) {
var product = button.parentNode.parentNode;
product.parentNode.removeChild(product);
}
function updateOnlineUsers() {
$.ajax({
url: '../html/data_treatment/AJAX/online_Users.php',
......@@ -452,6 +437,30 @@ include("../html/data_treatment/connect_database.php");
// Initial update
updateOnlineUsers();
function addToCart(button) {
var itemId = button.getAttribute("data-item-id");
var itemName = button.getAttribute("data-item-name");
var itemPrice = button.getAttribute("data-item-price");
var itemQuantity = document.getElementById("quantity" + itemId).value;
// Faire une requête Ajax pour ajouter l'article au panier
$.ajax({
url: '../html/data_treatment/AJAX/modifier_panier.php',
method: 'POST',
data: {
itemName: itemName,
itemPrice: itemPrice,
itemQuantity: itemQuantity
},
dataType: 'json',
success: function (response) {
alert(response.message); // Vous pouvez personnaliser cela en fonction de votre logique
},
error: function (error) {
console.error(error);
}
});
}
</script>
</body>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment