当前位置: 首页 > 知识库问答 >
问题:

在php中使用会话(本地存储)的购物车

沈皓君
2023-03-14

我正在尝试创建一个简单的购物车。

主要问题
页面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');
?>

共有1个答案

广绪
2023-03-14

你用单引号写了'$name',这意味着“不要解释这个字符串中的特殊字符,尤其是不要插入任何变量,即使我使用$符号”。所以每次运行的结果都是一样的。

要将变量扩展为字符串,需要双引号:

$_SESSION["$name"] = $product;

但是,由于您只是使用名称本身,因此在这种情况下,您根本不需要引号:

$_SESSION[$name] = $product;
 类似资料:
  • 问题内容: 除了是非持久性的并且仅限于当前窗口之外,会话存储与本地存储相比是否还有其他好处(性能,数据访问等)? 问题答案: localStorage和sessionStorage都扩展了Storage。除了的预期的“非持久性”外,它们之间没有区别。 也就是说,存储在中的数据将 一直保留到明确删除为止 。所做的更改将被保存,并且可用于当前和将来对该站点的所有访问。 对于, 更改仅在每个选项卡上可用

  • 问题内容: 我刚刚完成了在PHP中创建整个登录和注册systsem的操作,但是我的问题是我还没有使用任何会话。我是PHP的新手,以前从未使用过会话。我想做的是,在用户注册并填写登录表单后,他们仍将停留在同一页面上。因此,其中一部分将是会话已登录,另一部分将是其他(用户未登录,请显示登录表单)。谁能告诉我如何开始? 问题答案: 希望这可以帮助 :) 开始会话,您需要在页面顶部或在调用会话代码之前说出

  • sessionStorage 会话存储 存储针对QQ帐号隔离 数据存储于内存中,当前游戏结束后被清空 函数 key( index ) 获取对应索引的key 手q 版本7.8.5 参数 参数名 类型 说明 index number 索引值 返回值 类型 说明 string 说明 示例 var stringKey = BK.sessionStorage.key(0); getItem( key )

  • 当用户登录时,我将用户id存储到会话中,然后我希望将该用户id传递给ajax以检索数据库中的其他信息。存储在会话中的用户ID未传递给allResult。php我的登录页面代码片段,我在其中进行会话: 现在,登录后,用户将被带到仪表板: 在仪表板中,我试图使用ajax访问用户的其他数据 我需要获取用户id才能运行allResult。php所有结果。php

  • 我已经编辑了php配置以保存Redis上的会话。一切正常,但我意识到,有一天已经过去了,通过在redis-cli上运行命令键*,显示了一个巨大的php-session条目列表。我的问题是php是否会在任何时候删除这些键,或者我必须做一些事情来防止这种情况发生。我对此很担心。

  • 我是一名学习密码学的学生。在网上搜索之后,我仍然找不到问题的答案。我想知道如何为电子商务网站安全地存储会话ID。如果可能的话,怎么可能?请用外行的话解释一下。期待您的回答。 干杯