如果用户导航离开“购物车”页面,如何使用数据库,如何保持购物车的填充状态

时间:2012-11-13 19:07:46

标签: php session shopping-cart

我正在使用php构建购物车,并且我将所有项目都能够传递到购物车页面。但是,如果用户要离开页面,则所有项目都会消失。我知道我可以用来开始会话,但是如何在不使用数据库的情况下在会话中保留数据?

我应该学习HTML5会话存储吗?


谢谢,埃里克。我同意,'如果它没有破坏那么就不要试图解决它'......所以,我究竟如何读取/写入$ _SESSION数组的数据。我已经阅读了php手册页,但仍然不知所措......我的数据没有转移。这是我的代码:

    <?php session_start();
$mytext = $_SESSION['mytext']; 
    $mytext1 = $_SESSION['mytext1']; 
    $mytext2 = $_SESSION['mytext2']; 
    $mytext3 = $_SESSION['mytext3'];

$price = $_SESSION['price']; 
    $price1 = $_SESSION['price1']; 
    $price2 = $_SESSION['price2']; 
    $price3 = $_SESSION['price3']; 

    $total = $mytext * $price;     
    $total1 = $mytext1 * $price1; 
    $total2 = $mytext2 * $price2; 
    $total3 = $mytext3 * $price3; 

&GT;?“

1 个答案:

答案 0 :(得分:1)

默认情况下,PHP $ _SESSION变量不使用正确的数据库,或者除了PHP之外还需要安装任何东西。它只是将每个用户会话数据存储在服务器上的文件中。

调用session_start()之后,您可以像读取任何其他数组一样简单地读/写数据到$_SESSION数组。请查看session_start() page以获取示例。

不,我不会在HTML 5中执行此操作.PHP会话多年来一直运行良好,不会出现任何浏览器兼容性问题。

修改

您是先写入阵列吗?如果您还没有放入物品,您将无法获得任何结果。您会注意到,在链接页面的示例中,有两个页面正在播放中。第一页将分配给会话数组。在您的代码中,您只会尝试从会话数组中取出内容。在你向它添加项目之前,你不会得到任何东西。