私は基本的なショッピングカートを構築しています。カートに保管されているセッションには製品IDが使用されます。PHPセッションからの値の削除
アイテムを追加して削除できます。
アイテムが複数回追加された場合、カートは複数のエントリをカウントしています。
これらの数量を変更する方法がわかりません。
カートのセッションを爆発
が、それは次のようになります。1,2,1,1あり3×製品1と1×製品1
私は、製品1を削除した場合、それ1つのIDがすべて削除されます。
しかし、私はそれらのうちの1つを削除する方法やそこにいくつあるべきかを設定する方法がわかりません。
これは私の処理コードです:
// Process actions
$cart = $_SESSION['cart'];
@$action = $_GET['action'];
switch ($action) {
case 'add':
if ($cart) {
$cart .= ','.$_GET['id'];
} else {
$cart = $_GET['id'];
}
break;
case 'delete':
if ($cart) {
$items = explode(',',$cart);
$newcart = '';
foreach ($items as $item) {
if ($_GET['id'] != $item) {
if ($newcart != '') {
$newcart .= ','.$item;
} else {
$newcart = $item;
}
}
}
$cart = $newcart;
}
break;
$cart = $newcart;
break;
}
$_SESSION['cart'] = $cart;
任意のアイデア?
おかげ
ロブ
ああ、私はあなたがそこに配列を格納することができなかった、私は配列に配列を爆発されたので、これははるかに良い作品です。私は、セッションを読んでいたコードの他の部分を大部分が使えました。ありがとう – Greybeard