You have two separate problems here: 1) unset($_SESSION["cart_array"], $item) This unsets $_SESSION["cart_array"] and also $item, it should be unset($_SESSION["cart_array"][$item]) 2) The method of unsetting session variables depends on whether you have register_globals on, it's all here: http://www.php.net/manual/en/ref.session.php . The Examples section has detailed examples that should help you fix your problem
> -----Original Message----- > From: Brian Dunning [mailto:[EMAIL PROTECTED] > Sent: Thursday, February 19, 2004 8:50 AM > To: [EMAIL PROTECTED] > Subject: [PHP] Can't remove an element from an array > > > Hi, I have an array that holds the item_id's for a shopping cart. I am > trying to remove the item specified by a GET like this: > > foreach ($_SESSION["cart_array"] as $item) { > if ($item==$_GET["item_id"]) {unset($_SESSION["cart_array"], $item); > break;} > } > > But it removes ALL items from the cart. And then when I view the cart > on the next page, EVERYTHING is back, including the item I tried to > remove. What am I doing wrong? Thanks! > > - Brian > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php