仅在第一次请求时未定义的索引

时间:2013-07-05 09:56:54

标签: php session cart

我为字体库localhost创建了一个购物车,但是每当用户登录时,他会直接进入'mycart.php',它会显示$_SESSION['cart'] = $cart;的未定义索引,但是如果他下次错误点击它不会在那里。虽然PHP工作得很好。为什么会这样?

3 个答案:

答案 0 :(得分:1)

Assigment不会导致未定义的索引错误。当您想要检索未设置的$_SESSION['cart']值时,可能会发生这种情况。

问题是当您想要使用值$_SESSION['cart']时,您应该使用isset()函数检查其存在。

你写的是当他再次点击时没有错误。这是因为这个变量已设置并且在会话中。在分配之前检查您是否使用$_SESSION['cart']

您可以查看为print_r($_SESSION);

分配给会话的变量

答案 1 :(得分:0)

确保在使用session_start()变量之前致电$_SESSION

答案 2 :(得分:0)

isset()之类的

上使用first time
$cart=(isset($_SESSION['cart']) and $_SESSION['cart']!="") ? $_SESSION['cart'] : "";