【发布时间】:2014-12-25 23:21:11
【问题描述】:
我正在 Yii 中实现购物车模块,我可以将所有内容保存在会话数组中,但每次添加相同的产品时,数量都会增加,但再次设置为 1。
这是我的功能代码sn-p
public function actionAddToCart($id) {
$found = 0;
$cart = array();
$cart_item = $this->loadModel($id)->name;
$cart_price = $this->loadModel($id)->price;
$newItem = Yii::app()->session['cart'];
foreach ($newItem as $item) {
if($id == $item['id']) {
echo "quantity" . $item['quantity'];
$item['quantity'] += 1;
$found = 1;
$newItem[$id] = array('name'=>$cart_item,'price'=>$cart_price, 'quantity'=>$item['quantity'], 'id'=>$id ) ;
echo "Element Found=" . $found . 'Now quantity is '.$item['quantity'];
}
}
if($found != 1) {
$newItem[$id] = array('name'=>$cart_item,'price'=>$cart_price, 'quantity'=>1, 'id'=>$id ) ;
Yii::app()->session['cart'] = $newItem ;
echo "New added" ;
}
//array_push($cart, Yii::app()->session['cart'][$id] ) ; //array('name'=>$cart_item,'price'=>$cart_price)) ;
echo json_encode(array("items"=>$newItem));
Yii::app()->end();
}
提前寻求帮助谢谢。
【问题讨论】:
-
您是否使用任何扩展来实现购物车功能?
标签: php arrays session yii cart