我已经使用php实现了简单的购物车。我可以在购物车中添加产品并将其添加到array.i在url上获取我的产品ID,当我点击添加到购物车按钮时,基于thar url id我从数据库中获取产品数据并添加到会话数组,但我的问题是当我添加相同的产品时,我在会话中获得新的条目而不是更新该产品的数量。 那么,如果produt_id已经存在,我会用什么代码更新购物车数量。?
这是使用$_SESSION['cart']
的print_r数组值。
[cart] => Array
(
[0] => Array
(
[product-id] => 1
[item] => mango
[unitprice] => 20
[quantity] => 1
)
[1] => Array
(
[product-id] =>2
[item] => chickoo
[unitprice] => 20
[quantity] => 1
)
)
答案 0 :(得分:1)
听起来您需要确保product_id
不在您的会话数组中。请尝试以下
$found = false;
foreach($_SESSION['cart'] as $product)
{
if($_REQUEST['product_id'] == $product['product_id']) {
$found = true;
break;
}
}
if($found)
{
$_SESSION['cart'][$_REQUEST['product_id']]['quantity'] += 1;
} else {
// go get new product and add to $_SESSION['cart']
}