php - 在 php 中使用会话(本地存储)的购物车
问题描述
我正在尝试创建一个简单的购物车。
主要问题
该页面insertCart.php
总是在查看购物车上添加一个产品,而不添加另一个。
次要问题:
- 如何在查看购物车上显示产品图像
- 如何使用会话在购物车上添加多个项目
- 如何计算增加的产品总量。
使用会话我尝试从产品详细信息页面获取数据,当用户单击按钮添加到购物车时,将添加产品项目。
这是我到目前为止使用的代码
insertCart.php
<?php
//start session
session_start();
include('connection/db.php');
//get the values
$name = $_POST['name'];
$price = $_POST['price'];
$quantity = $_POST['qty'];
$image = $_POST['image'];
//storing values in an array and assign it to a variable
$product = array($name, $price, $quantity,$image);
//store arrays values in session varialbe '$name'
$_SESSION['$name'] = $product;
header('location: view_cart.php');
?>
解决方案
你用'$name'
单引号写了,这意味着“不要解释这个字符串中的特殊字符,尤其是不要插入任何变量,即使我使用了这个$
符号”。所以每次运行的结果都是一样的。
要将变量扩展为字符串,您需要双引号:
$_SESSION["$name"] = $product;
但由于您只是单独使用名称,在这种情况下您根本不需要引号:
$_SESSION[$name] = $product;
推荐阅读
- apache-spark - Spark Structured Streaming 流-流连接问题
- javascript - 使用Angular 4为日期类型的HTML输入赋值
- python-3.x - Python:双引号和转义符在 csv 模块中的作用是什么?
- android - 如何在 android 应用程序中获取 android 屏幕图像
- python-2.7 - 使用 pandas 中几乎相等的标准根据列值删除重复行
- database - IsNull 组合框
- php - 将变量上传到 sql 查询
- stored-procedures - 实体框架核心数据库表值函数映射
- penetration-testing - POST 请求的 CSRF 检测,在服务器上进行内容类型验证
- amcharts - 减少 AmChart 构建大小