Смотрите новый вопрос - { ссылка } - PullRequest
0 голосов
/ 21 апреля 2020

ПОСЛЕДНИЕ ОБНОВЛЕНИЯ, см. Мой новый вопрос на ту же тему! Как получить обновленный массив сеансов корзины и отобразить его в другом php файле AJAX

Раньше я работал с AJAX, у меня есть значение цены, общего количества или количества корзин.

Сейчас я нахожусь в момент, когда я хочу удалить товары без перезагрузки, это работает сейчас (не так, как я хотел, я хотел обновить код с информацией о корзине, теперь я удаляю его с помощью jquery). Но я не знаю, как сделать так, чтобы приведенный ниже счетчик обновлялся КАЖДЫМ кликом.

Я попытался получить массив корзины из файла PHP (AJAX). Моя идея заключалась в том, чтобы отобразить новый обновленный счетчик корзины в первый файл php, но он на самом деле не работает.

// EDIT *, я получил обновленную корзину внутри console.log(response['delete_product']); Но я не могу получить его, когда отправляю значение в div внутри корзины. php.

Это идея, корзина. php

if(count($_SESSION['cart'])>0){
// If i could load the updated CART ARRAY here it would work i guess?
echo "<div class='loadDeleteIdProductFromAjax'></div>";

//Here is a example of my products inside a WHILE loop
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
echo "<div class='col-md-12 whole-product-div' data-id='{$id}'>";
echo "<div example>";
echo "</div example>";
echo "</div>";
}


//closing of cart count if statement
} else {

    echo "<div class='col-md-12'>";
        echo "<div class='alert alert-danger'>";
            echo "No products found in your cart!";
        echo "</div>";
    echo "</div>";

}

Последняя часть кода alert alert-danger работает только при обновлении страницы sh. Это то, что я надеюсь узнать от кого-то, как это исправить. Пожалуйста, смотрите мой следующий код ниже.

// remove_from_cart. php

<?php
// start session
session_start();
include('config/database_connection.php');
// get the product id
$id = isset($_GET['id']) ? $_GET['id'] : "";

// remove the item from the array
unset($_SESSION['cart'][$id]);


// I TRIED THIS BUT DOESNT WORK
$array = $_SESSION['cart'];
$advert = array(
'delete_product' => $array,
);

?>

// AJAX JQUERY

$(document).ready(function(){
//Remove id from cart with AJAX
                $(".delete-product-cart").click(function(e){

             var id = $(this).data('id');
             //remove product div clicked on ID
             $('.whole-product-div[data-id="'+id+'"]').remove();

             $.ajax({
                 url: "remove_from_cart.php",
                 type: "GET", //send it through get method
                 data: {
                     id: id,
                 },
                 dataType : 'JSON',
                 success: function(response) {
                     //Do Something handle success
                 },
                 error: function(xhr) {
                     //Do Something to handle error
                 }
             });

                });
});

Итак, я попытался распечатать обновленную корзину с remove_from_cart.php до начала корзины. php. Но я не знаю, так ли это мне нужно. Вот почему я спрашиваю это здесь.

Как может массив корзин от remove_from_cart.php до if(count($_SESSION['cart'])>0){

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...