2017-08-03 89 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