2
Я передаю id с помощью ajax, который нужно удалить с помощью $ _SESSION. Часть ajax работает нормально, php получает в POST идентификатор, но доступный не может быть отменен. Зачем??? Вот мой код:Unset php session variable
Аякс части:
$(".delete").live('click', function(e){
e.preventDefault();
var id_to_remove = $(this).attr('id');
//alert(id_to_remove);
$.ajax({
type: "POST",
url: 'inc/functions/remove_item_from_cart.php',
data: { id : id_to_remove },
success: function(data) {
$("#content").load('inc/functions/get_checkout_content.php');
alert(data);
}
})
});
РНР передающая часть:
session_start();
if(isset($_SESSION['cart']) && isset($_POST['id'])){
//echo var_dump($_SESSION['cart']);
$ncart=$_SESSION['cart'];
if (count($ncart)>0){
unset($ncart[$_POST['id']]); // this is NOT working!!!
$ncart=array_values($ncart);
$_SESSION['cart']=$ncart;
if(count($ncart)==0){
unset($_SESSION['cart']);
unset($_SESSION['cart_total']);
echo "all_empty";
} // this if part is the only working!
}
}
Любое предложение полезно, почему я не могу сбросить значение переменной сессии? Благодаря!
А что именно не работает с этим кодом? Мы не будем догадываться, что происходит не так ... –
Какую версию jQuery вы используете? ['.live()'] (http://api.jquery.com/live/) теперь устарел. –
Извините, но для подтверждения этот процесс правильный: '$ ncart = $ _ SESSION ['cart'];' to '$ ncart = array_values ($ ncart);' to '$ _SESSION ['cart'] = $ ncart ; '? – MichaelRushton