仓酷云

标题: PHP网站制作之php session 购物车类 [打印本页]

作者: 灵魂腐蚀    时间: 2015-1-16 22:15
标题: PHP网站制作之php session 购物车类
培训的第二阶段,开始了PHP语言语法结构和应用的学习。
  1. <?phpclassCart{publicfunctionCart(){if(!isset($_SESSION[cart])){$_SESSION[cart]=array();}}/*增加商品paramint$id商品主键string$name商品称号float$price商品代价int$num购物数目*/publicfunctionaddItem($id,$name,$price,$num,$img){//假如该商品已存在则间接加其数目if(isset($_SESSION[cart][$id])){$this->incNum($id,$num);return;}$item=array();$item[id]=$id;$item[name]=$name;$item[price]=$price;$item[num]=$num;$item[img]=$img;$_SESSION[cart][$id]=$item;}/*修正购物车中的商品数目int$id商品主键int$num某商品修正后的数目,即间接把某商品的数目改成$num*/publicfunctionmodNum($id,$num=1){if(!isset($_SESSION[cart][$id])){returnfalse;}$_SESSION[cart][$id][num]=$num;}/*商品数目+1*/publicfunctionincNum($id,$num=1){if(isset($_SESSION[cart][$id])){$_SESSION[cart][$id][num]+=$num;}}/*商品数目-1*/publicfunctiondecNum($id,$num=1){if(isset($_SESSION[cart][$id])){$_SESSION[cart][$id][num]-=$num;}//假如削减后,数目为0,则把这个商品删失落if($_SESSION[cart][$id][num]<1){$this->delItem($id);}}/*删除商品*/publicfunctiondelItem($id){unset($_SESSION[cart][$id]);}/*猎取单个商品*/publicfunctiongetItem($id){return$_SESSION[cart][$id];}/*查询购物车中商品的品种*/publicfunctiongetCnt(){returncount($_SESSION[cart]);}/*查询购物车中商品的个数*/publicfunctiongetNum(){if($this->getCnt()==0){//种数为0,个数也为0return0;}$sum=0;$data=$_SESSION[cart];foreach($dataas$item){$sum+=$item[num];}return$sum;}/*购物车中商品的总金额*/publicfunctiongetPrice(){//数目为0,代价为0if($this->getCnt()==0){return0;}$price=0.00;foreach($this->itemsas$item){$price+=$item[num]*$item[price];}returnsprintf("%01.2f",$price);}/*清空购物车*/publicfunctionclear(){$_SESSION[cart]=array();}}
复制代码
刚开始因为习惯于ASP格式的写法,总是在这些方面出现问题,自己还总是找不到问题所在,这就提醒了自己,在写代码的时候一定要认真,不能粗心地老是少个“;”或者字母大小写不分,要不然很可能找半天都找不到错误。
作者: 若相依    时间: 2015-1-19 06:12
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
作者: admin    时间: 2015-2-2 22:19
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
作者: 乐观    时间: 2015-2-8 13:56
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
作者: 愤怒的大鸟    时间: 2015-2-25 16:27
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
作者: 冷月葬花魂    时间: 2015-3-7 23:53
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
作者: 老尸    时间: 2015-3-15 17:30
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
作者: 分手快乐    时间: 2015-3-22 02:54
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2