PHP添加到购物车会话错误

时间:2014-12-14 18:30:07

标签: php session

我正在测试这个简单的购物车代码,但出于某种原因,它似乎无法运作。我创建了3页,第1页包含:

<a href="add-to-cart.php?id=1">Item 1</a><br><br>
<a href="add-to-cart.php?id=2">Item 2</a><br><br>
<a href="add-to-cart.php?id=3">Item 3</a><br><br>

在第2页(add-to-cart.php)页面:

<?php
session_start();

if(empty($_session['cart'])){
$_session['cart'] = array();
}

array_push($_session['cart'], $_GET['id']);
?>
<br><br>
Product is succesfully added to cart.
<a href="cart.php">View Cart Items</a>

最后,在第3页(cart.php)页面:

<?php 
session_start();

var_dump($_session['cart']);
?>

而不是数组,我得到这个错误:

  

注意:未定义的变量:第4行的C:\ xampp \ htdocs \ projects \ add_to_cart \ independent \ compare.php中的_session

     

NULL

2 个答案:

答案 0 :(得分:1)

你必须用大写字母写会话,如:

$_SESSION["cart"] 

而不是:

$_session["cart"]  //if you write it like this it's a normal array

所以你的代码应该是这样的:

添加到cart.php:

<?php
session_start();

if(empty($_SESSION['cart'])){
$_SESSION['cart'] = array();
}

array_push($_SESSION['cart'], $_GET['id']);
?>
<br><br>
Product is succesfully added to cart.
<a href="cart.php">View Cart Items</a>

cart.php:

<?php 

    session_start();
    var_dump($_SESSION['cart']);

?>

有关详细信息,请参阅:http://php.net/manual/en/reserved.variables.session.php

答案 1 :(得分:0)

以大写形式使用$_SESSION。变量名在PHP中区分大小写。