如果会话已经存在,告诉PHP不要启动会话

时间:2017-04-21 00:40:45

标签: php session

在我的电子商务网站分配的购物车中,我决定使用if语句来检查会话是否存在,因为我发现不是在我创建的数组的末尾添加ID,而是仅显示之前点击的ID。我不希望你理解我不清楚的解释,但它给出了基础。

我认为这是因为每次我使用我点击过的项目的ID加载页面时都会创建一个新会话,因此建议我使用if语句来检查会话是否存在。这是我到目前为止所得到的:

if(!isset($_SESSION)){
session_start();
}else{
//I want it to say not to start a session here
}

我应该在其他部分放置什么才能启动会话?

2 个答案:

答案 0 :(得分:1)

如果尚未设置购物车会话变量,请确保只初始化购物车会话变量。

session_start(); // No need to test if the session is already started
if (!isset($_SESSION['cart'])) {
    $_SESSION['cart'] = array();
}
$_SESSION['cart'][] = $id;
print_r($_SESSION['cart']);

答案 1 :(得分:0)

尝试将push与数组参数一起使用,而不是覆盖该值。

https://www.w3schools.com/php/func_array_push.asp