php实现简单购物车的案例
创始人
2024-11-16 22:22:28
0次

php实现简单购物车的方法:首先用session记录一个二维数组;然后把session存入array;最后对array进行增加、删除、修改操作即可。

本文介绍一个php实现的购物车代码,功能实现完整,具有一定的参考价值

这里我们为你提供个简单的php购物车代码,从增加购物产品与发生购买了,在商城开发中,这个功能是少不了的

具体分析如下:

对购物车里商品的操作大体上有以下几个:添加商品,删除商品,以及提交订单;

方法本质是:把session存入array,对array进行增加、删除、修改操作,array中的每一组记录都是一个商品的信息(个数,价格等);

解决购物车的思路是用session记录一个二维数组。一维代表每一个商品,二维包含了商品的id,商品的数量...等可以自行增加,反正都是二维了,自己愿意带多少个商品属性就加上去。

购物车的操作流程:首先,登录到网站中浏览商品;然后,购买指定的商品,进入购物车页面中,在该页面可以实现更改商品数量、删除商品、清空购物车、继续购物等;最后,生成订单,提交订单等操作。

详细请看强大的注释;

首先登入;


登入页面

帐号:

密码:

图:

php实现简单购物车的案例

登入处理:

Query($sql);
if(!empty($zhang)&&!empty($mi)&&$mi = $arr){
    $_SESSION["zhang"] = $zhang;
    header("location:zym.php");
}
else
{
    echo "登入失败";
}

?>

很简单的一个登入,没啥说的;

他登入完了以后直接进入主页面:


长腿璇购物商城

   Query($sql);
    foreach ($arr as $v)
    {
        echo " 
"; } ?> Query($sql1); foreach($danjia as $n) { $aa=$aa + $n[0]*$k[1]; } } echo"数量:{$zhonglei}
价格:{$aa}元"; ?>
代号 水果名称 水果价格 水果产地 水果库存 操作
{$v[0]} {$v[1]} {$v[2]} {$v[3]} {$v[4]} 加入购物车
查看账户 查看购物车

来图:

php实现简单购物车的案例

当我点击添加到购物车:

php实现简单购物车的案例

上面的数量与价格变了,说明已经加到了购物车里面;

来看一下是怎么处理的(强大的注释):

接下来做一下购物车的页面:


查看购物车

   query($sql);
        foreach ($att as $a)
        {
            echo "
"; // 蔬果的名称 // 单价 // 取int数量 // 这个地方也可以加索引shanchu.php?sy={$v} } } ?>
商品名称 商品单价 商品数量 操作
{$a[1]} {$a[2]} {$v[1]} 删除
提交订单

上图:

php实现简单购物车的案例

可以看到大苹果的数量是4,若是我点删除,其条件便是存在大苹果,且数量大于一,点击删除使数量减一:

白葡萄的数量是1,若我点击删除,其条件是数量不大于一,使其移除数组;

说了这些快来看看删除页面吧:

$v)
{
    if($v[0]==$ids)
    {
        if($v[1]>1){
            //要删除的数据
           $arr[$key][1]-=1;
        }
        else{
            //数量为1的情况下,移除该数组
            unset($arr[$key]);
        }
    }

}

$_SESSION["gwc"] = $arr;
//记得扔到session里面
header("location:ckgwc.php");
//删除完跳转回去

高能!!

提交订单页面,我只来一个处理页面吧,小伙伴若有需要自己填链接即可:

query($sye);
$ye[0][0];//这是余额

$ann=array();
if(!empty($_SESSION["gwc"]))
{
    $ann=$_SESSION["gwc"];

}
$zhonglei = count($ann);

$aa=0;//总价格
foreach($ann as $k)
{

    $k[0];//水果代号
    $k[1];//水果数量
    $sql1="select jiage from sgbiao where ids='{$k[0]}'";

    $danjia=$db->Query($sql1);

    foreach($danjia as $n)
    {

        $aa=$aa + $n[0]*$k[1];
    }


}
//判断余额是否满足
if($ye[0][0]>=$aa)
{
    //钱够,判断库存

    foreach($ann as $v)
    {
        $skc = "select sgname,kucun from sgbiao WHERE ids='{$v[0]}'";
        //水果代号$v[0]
        $akc = $db->query($skc);
        $akc[0][1];//库存
        //比较是否满足库存
        if($akc[0][1]<$v[1])
        {
            echo "{$akc[0][0]}库存不足";
            //退出
            exit;
        }

    }
//提交订单:
//i.    从用户账户中扣除本次购买的总价格
//ii.    从商品库存中扣除本次每种商品的购买数量
//iii.    向订单表和订单内容表中加入本次购买的商品信息
    //扣除账户余额
$skcye = "update yonghu set zhanghu = zhanghu-{$aa} WHERE zhang = '{$zhang}'";
    $db->query($skcye,0);
    //扣除库存
    foreach($ann as $v)
    {
        $skckc = "update sgbiao set kucun = kucun-{$v[1]} WHERE ids='{$v[0]}'";
        //水果代号$v[0]
        $db->query($skckc,0);
    }
    //添加订单信息
    //取当前时间
    $time = time();
    //自动生成订单号
    $ddh = date("YmdHis");
    $sdd = "insert into dingdan VALUES ('{$ddh}','$zhang','$time')";
    $db->query($sdd,0);
    //添加订单内容
    foreach ($ann as $v)
    {
        $sddxq = "insert into ddneirong VALUES ('','$ddh','{$v[0]}','{$v[1]}')";
        $db->query($sddxq,0);
    }


}
else
{
    echo "钱不够";
    exit;
}

如此一来,购物车大体上的功能都已实现;

来看看点击提交订单后的效果:

1.减少水果库存:

php实现简单购物车的案例

2.添加订单:

php实现简单购物车的案例

3.添加订单内容:

php实现简单购物车的案例

4.扣除购买人的账户余额:

php实现简单购物车的案例

以上便是购物车内容

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...