PHP

PHP会话技术之Session购物车简单实现

我们来回想一下添加购物车的流程,看见商品->点击添加按钮->查看购物车,这篇文章我们就来简单实现这个功能。

首先创建三个文件

  1. 商品列表(good_list.html)
  2. 购物车(cart.php)
  3. 添加功能(bug.php)

页面我这里就简陋写了,无序列表菜单,a标签路径指向bug.php并带着参数过去

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
<ul>
    <li>
        <span>我是第一个产品</span>
        <a href="bug.php?name=我是第一个产品">加入购物车</a>
    </li>
    <li>
        <span>我是第二个产品</span>
        <a href="bug.php?name=我是第二个产品">加入购物车</a>
    </li>
    <li>
        <span>我是第三个产品</span>
        <a href="bug.php?name=我是第三个产品">加入购物车</a>
    </li>
    <li>
        <span>我是第四个产品</span>
        <a href="bug.php?name=我是第四个产品">加入购物车</a>
    </li>
    <li>
        <span>我是第五个产品</span>
        <a href="bug.php?name=我是第五个产品">加入购物车</a>
    </li>
    <a href="cart.php">查看购物车</a>
</ul>
</body>
</html>

在bug.php中,我们获取到参数并判断购物车中有没有相同的商品,有的话加一,没有则设为一。

<?php
$name = isset($_GET['name'])?$_GET['name']:"";
session_start();
if (isset($_SESSION['cart'][$name])) {
    $_SESSION['cart'][$name]++;
}else{
    $_SESSION['cart'][$name] = 1;
}
echo '加入成功';

购物车页,开启Session并打印

<?php
session_start();
var_dump($_SESSION);

这样,一个简单的购物车功能就实现了。

微信扫一扫,向我赞赏

微信扫一扫,向我赞赏

微信扫一扫,向我赞赏

支付宝扫一扫,向我赞赏

回复

This is just a placeholder img.