dosrmo0442 2013-03-02 19:17
浏览 36
已采纳

取消设置php会话变量

I'm passing an id by ajax to be removed by $_SESSION. The ajax part works fine, the php receive in POST the id, but the vairable can't be unset. Why??? Here my code:

The ajax part:

    $(".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);
        }
    })

});

The php receiving part:

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!
}
}

Any helpful suggestion why I can't unset the session variable? Thanks!

  • 写回答

1条回答 默认 最新

  • duanchigeng4313 2013-03-09 14:53
    关注

    I got my own solution:

    if (count($_SESSION['cart'])>0){
    
     foreach ($_SESSION['cart'] as $key => $subarray){ 
      if ($subarray['id'] == $_POST['id']){ 
      unset($_SESSION['cart'][$key]); 
     break; 
     } 
    } 
    
    $_SESSION['cart'] = array_values($_SESSION['cart']);
    
    } else {
     if(count($_SESSION['cart'])==0){
      unset($_SESSION['cart']);
      unset($_SESSION['cart_total']);
      echo "all_empty";
     }  
    }
    

    That's because the array was like this:

    Array
    (
        [0] => Array
            (
                [id] => 3
                [name] => Collier Ano petit
                [price] => 45
                [quant] => 1
                [ptotal] => 45
            )
    
    )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 GD32 SPI通信时我从机原样返回收到的数据怎么弄?
  • ¥15 phython读取excel表格报错 ^7个 SyntaxError: invalid syntax 语句报错
  • ¥20 @microsoft/fetch-event-source 流式响应问题
  • ¥15 ogg dd trandata 报错
  • ¥15 高缺失率数据如何选择填充方式
  • ¥50 potsgresql15备份问题
  • ¥15 Mac系统vs code使用phpstudy如何配置debug来调试php
  • ¥15 目前主流的音乐软件,像网易云音乐,QQ音乐他们的前端和后台部分是用的什么技术实现的?求解!
  • ¥60 pb数据库修改与连接
  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?