2017-08-03 77 views
-1

我目前正在让我的购物车在我的在线商店中排序。我将购物车设置为一个数组,它是一个会话变量。我可以轻松将商品添加到购物车,但我无法移除它们。我尝试使用未设置的会话变量或获取会话变量来删除它们,将其更新为本地变量,然后将更新后的版本设置为会话变量,但它们都没有工作。如何从设置为会话变量的数组中删除变量

值$ _SESSION [“cart”]是一个包含购物车中物品的数组。 $ _GET [“帐户”]是他们想要从购物车中删除的商品的索引。这是我目前的代码:

if (isset($_GET["account"])) { 

    $accountnumber = $_GET["account"]; 
    $cart = $_SESSION["cart"]; 
    unset($cart[$accountnumber]); 
    $_SESSION["cart"] = $cart; 

} 

请让我知道它有什么问题。

感谢

+0

您需要从会议中删除这样的'未设置($ _SESSION [ “购物车”] [$ _ GET [ “帐户”]);' – JYoThI

+0

当然'未设置($ _SESSION [ “购物车”] [$ ACCOUNTNUMBER]);' – RiggsFolly

回答

0

可以unset这样

unset($_SESSION["cart"][$_GET["account"]]); 

注会话:不要忘了在页面

0

无需与参考会话的顶部开始的会话另一个变量。

unset($_SESSION["cart"][$accountnumber]); 

这样就够了。

0

您的网站是否存在另一个会话?如果没有,你可以尝试session_destroy();,否则,试试这个。

if (isset($_GET["account"])) { 
    $key=array_search($_GET['account'],$_SESSION['cart']); 
    if($key!==false){ 
     unset($_SESSION['cart'][$key]); 
    } 
} 

是指由link