2016-12-05 8 views
0
case "remove": 
    if(!empty($_SESSION["cart"])) { 
     foreach($_SESSION["cart"] as $k => $v) { 
      if($_GET["code"] == $k){ 
       //print_r($_SESSION["cart"][$k]); 

       unset($_SESSION["cart"][$k]); 
       header("Location:../cart.php");   
      } else { 

      } 
     } 
    } 
    break; 

私のカートに1つのアイテムしかない場合、機能はうまく動作しますが、アイテムが多数ある場合、アイテムは削除できません。アレイセッションから1つの値を解除する方法

答えて

1

あなたが場所を続行するのforeachの最後で最初で唯一の全項目を完了する必要があります...

case "remove": 
    if(!empty($_SESSION["cart"])) { 
     foreach($_SESSION["cart"] as $k => $v) { 
      if($_GET["code"] == $k) unset($_SESSION["cart"][$k]); 
     } 
     header("Location:../cart.php");   
    } 
    break; 
関連する問題