首页 > 代码库 > 购物车的简单添加与计算

购物车的简单添加与计算

大家上网买东西都是要先将商品添加到购物车中然后结算。

1.首先要有商品的类型然后去选择添加

如图:

技术分享

这个是最简单的,像淘宝上的购物车都很好看,在这里我没有做美化,方法是这样的美化后期可以自己做。

 1 <h1>商品列表</h1>
 2 <table width="500px" border="1" cellpadding="0" cellspacing="0">
 3     <tr>
 4         <td>代号</td>
 5         <td>名称</td>
 6         <td>单价</td>
 7         <td>产地</td>
 8         <td>库存</td>
 9         <td>操作</td>
10     </tr>
11     <?php
12         require "DBDA.class.php";//封装类
13         $db=new DBDA();
14         $sql="select * from fruit";
15         $arr=$db->query($sql);
16         foreach($arr as $v)//遍历数组
17         {
18             echo "<tr>
19                 <td>{$v[0]}</td>
20                 <td>{$v[1]}</td>
21                 <td>{$v[2]}</td>
22                 <td>{$v[3]}</td>
23                 <td>{$v[4]}</td>
24                 <td><a href=http://www.mamicode.com/‘gwcchuli.php?ids={$v[0]}‘>添加购物车</a></td>
25             </tr>";
26         }
27     ?>
28 </table>

上面是主页面的商品类型

这里还要有处理页面就是如果在添加商品的时候如果你选的商品在购物车里面有的情况下让它在原有的基础上加一,没有的话我们就让它添加上

 1 <?php
 2 session_start();
 3 $ids=$_GET["ids"];
 4 //如果是第一次添加购物车,造一个二维数组存到SESSION里面
 5 //如果不是第一次添加,有两种情况
 6 //1.如果该商品购物车里面不存在,造一个一维数组扔到二维里面
 7 //2.如果该商品在购物车存在,让数量加1
 8 
 9 
10 if(empty($_SESSION["gwc"]))
11 {
12                 //如果是第一次添加购物车,造一个二维数组存到SESSION里面
13         $arr=array(
14             array($ids,1)
15         );
16         $_SESSION["gwc"]=$arr;
17 }
18 else
19 {
20         //2.如果该商品在购物车存在,让数量加1
21     $arr=$_SESSION["gwc"];
22     $bs=false;//这里我们给它定义如果里面没有就返回false
23     foreach($arr as $v)
24     {
25         if($v[0]==$ids)
26         {
27             $bs=true;//里面如果有这个商品就返回true
28         }    
29     }    
30     if($bs)
31     {
32         foreach($arr as $k=>$v)//这里去遍历搜索有没有相同的
33         {
34             if($v[0]==$ids)
35             {
36             $arr[$k][1]++;
37             }
38         }
39         $_SESSION["gwc"]=$arr;//加上一以后再把它扔到$_SESSION["gwc"]里面使其在购物车里的数量变化
40     }
41     else
42     {
43                 //1.如果该商品购物车里面不存在,造一个一维数组扔到二维里面
44         $attr=array($ids,1);
45         $arr[]=$attr;
46         $_SESSION["gwc"]=$arr;
47     }
48 }
49 
50 header("location:splist.php");     

 

2.这里我们来看看购物车中的情况

如图:

技术分享

点击删除商品

如果数量为一就会删除该商品

技术分享

如果数量大于一就会数量减一

技术分享

 

实现数量的变化

 1 <?php
 2 session_start();
 3 $sy = $_GET["sy"];
 4 
 5 //如果该水果数量大于1,减1
 6 //如果该水果数量等于1 移除
 7 $arr = $_SESSION["gwc"];
 8 
 9 if($arr[$sy][1]>1)
10 {
11     //如果该水果数量大于1,减1
12     $arr[$sy][1]--;
13 }
14 else
15 {
16     unset($arr[$sy]);
17     $arr = array_values($arr);
18 }
19 
20 $_SESSION["gwc"] = $arr;
21 header("location:chakan.php");

 

购物车的简单添加与计算