PHP сессия не будет сбрасывать элемент массива, если указано так - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть некоторый AJAX-код, который получает кнопку «удалить» и отправляет ее на rem_cart.php

 $(document).on('click', '.delete', function(){

                            var product_id = $(this).attr('id');
                            var action = "Delete";
                            console.log(product_id);

                            if (confirm("Are you sure you want to remove 
                            this product from your cart?")) {

                                $.ajax({
                                    url: "../PHP_Scripts/rem_cart.php",
                                    method: "POST",
                                    dataType: "json",
                                    data: {

                                    product_id: product_id,
                                    action: action

                                    },

                                    success:function(data){
                                    $('#order_table').html(data.order_table);
                                    $('.badge').text(data.cart_item);
                                }
                              });

                            }else{
                                return false;
                            }

                        });

Вот rem_cart.php:

if (isset($_POST['action'] == "Delete")) {
     foreach ($_SESSION['shopping_cart'] as $key => $value) {
        if ($value['product_id'] == $_POST['product_id']) {
             unset($_SESSION['shoppingcart'][$key]);

        }
     }
}

Ключ сеансане сбрасывается.

На вкладке сети также отображается вся правильная информация:

product_id: 12
action: Delete

Может кто-нибудь пролить свет?

...