PHP setcookie() 在多个页面上不起作用


PHP setcookie() doesn't work on several pages

我很难理解为什么setcookie()在几个页面上不起作用。

if (isset($_POST['group'])){ 
    $group = stripslashes($_POST['group']);
    setcookie(GSgroup, $group, time()+3600);
}

我使用上面的代码在发布具有多个选项的表单时设置cookie。我在包含的页面上使用它,以便所有使用此功能的页面都将cookie设置为正确的组。

现在,当我在localhost上尝试时,这工作得很好,但是将其上传到实时网站后,它不再起作用了。奇怪的是,在我将其用于另一个包含的页面上后,它确实有效。

有谁知道这是怎么回事?我真的很困惑。

如果您需要更多信息,请询问。

if(isset($_POST['group'])){ 
$group = stripslashes($_POST['group']);
setcookie(GSgroup, $group, time()+3600);
}

这是实际的代码吗?因为 setcookie 函数中的第一个参数应该是字符串或包含字符串的变量。

setcookie('GSgroup', $group, time()+3600);
请记住

,cookie 是在页面加载时加载的,因此如果您在 PHP 脚本中使用 setcookie在第 5 行设置了 cookie,那么在第 10 行使用$_COOKIE访问它将不会为您提供 cookie 值。

您需要重新加载页面才能以这种方式访问 cookie 值。

我喜欢这个可用的 PHP cookie 类。