0
点赞
收藏
分享

微信扫一扫

韩顺平 php视频教程 笔记心得 zend.framework.第17讲.综合应用-购物车3


ShoppingController.php 该控制器最复杂,默认点击一次购买一次,单击第二次相当于增加一次。类似于淘宝 天猫的购物

Mycart 表模型会和mycart表对应,会完成对购物车的各种操作。

<?php
/**
* 这个类的一个对象实例表示一个购物车对象
* Enter description here ...
* @author harry_manage_top_100
*
*/
class MyCart extends Zend_Db_Table{
protected $_primary='id';
protected $_name='mycart';
}

查看购物车

单例可以用session

session的重写机制  handle  可以直接把session往数据库里写。

 

书名

价格

出版社

购买

php应用开发详解

59

电子工业出版社


php web服务开发

45

电子工业出版社


php 编程思想

99

电子工业出版社


php应用开发详解

10

机械工业出版社


php 企业级应用开发

68

电子工业出版社


java编程思想

99

快客出版社


php参考手册

65

电子工业出版社


php web服务开发

550

快客出版社



 

我的购物车

id

书名

价格

出版社

数量

是否删除

3

php 编程思想

99

 

1

是否删除

6

java编程思想

99

 

4

是否删除

7

php参考手册

65

 

1

是否删除

2

php web服务开发

45

 

3

是否删除

购物车总价:??元  返回购物大厅


<?php
/**
* 这个类的一个对象实例表示一个购物车对象,表模型里面也可以写方法
* Enter description here ...
* @author harry_manage_top_100
*
*/
class MyCart extends Zend_Db_Table{
protected $_primary='id';
protected $_name='mycart';

var $total_price=0;

//添加商品到购物车(把登录用户选中的商品保存到mycart表中)
function addProduct($userId,$productId,$nums=1){
$res=$this->fetchAll("userid=$userId AND bookid=$productId")->toArray();
if(count($res)>0){
//说明该用户的购物车记录中,已经购买过这个商品,因此这里我们需要更新数量就可以了。
$old_nums=$res[0]['nums'];
$data=array(
'nums'=> $old_nums+1
);
$where="userid=$userId AND bookid=$productId";

$this->update($data, $where);
return true;


}else{
$now=time();
$data=array(
'userid'=>$userId,
'bookid'=>$productId,
'nums'=>$nums,
'cartDate'=>$now
);

//$mycartModel=new MyCart();
if($this->insert($data)>0){
/* $this->view->info='添加商品成功';
$this->_forward('ok','global');*/
return true;

}else{
return false;
}

}
}

//从购物车删除商品

//修改商品

//计算购物车的总价
function getTotalPrice(){

}

//显示购物车 抽象封装某个用户的购物车
function showMyCart($userId){
$sql='select b.id,b.name,b.price,m.nums from book b,mycart m where b.id=m.bookid';
$db=$this->getAdapter();
$res=$db->query($sql)->fetchAll();
//顺带把总价计算出来
//$total_price=0;
for($i=0;$i<count($res);$i++){
$bookinfo=$res[$i];
$this->total_price+=$bookinfo['price']*$bookinfo['nums'];
}
return $res;
}
}

 


举报

相关推荐

0 条评论