在我的服务器上我无法让cookie按预期工作。这是我的代码:
$id = '1';
if(! isset($_COOKIE["Count"])){
setcookie("Count", "1", time()+3600);
}
if($_COOKIE["Count"] > 2){
$id = '0';
exit();
}
else {
setcookie("Count", ($_COOKIE["Count"] + 1), time()+3600);
}
Cookie 计数旨在每次访问者访问该页面时增加值。 3次或更多次将变量 id 设置为某个值,否则设置为1.回显变量会从设置的请求数中显示1,但之后变为null。尽管被发现,但回应cookie的值也没有响应。
我相信我的错误就是改变价值的方式。我不确定如何正确设置它。
非常感谢任何帮助。
答案 0 :(得分:0)
$id = '1';
if(! isset($_COOKIE["Count"])){
setcookie("Count", "1", time()+3600);
}
if($_COOKIE["Count"] > 2){
$id = '0';
exit();
}
else {
$newcount = $_COOKIE["Count"]++;
setcookie("Count", $newcount, time()+3600);
}
在像
这样的函数中计算和调用全局答案 1 :(得分:0)
试试这个: setcookie(“Count”,((int)$ _ COOKIE [“Count”] + 1),time()+ 3600);
请记住,当您设置Cookie时,在下一个请求之前,您无法在其上看到新值。
答案 2 :(得分:0)
$ _ COOKIE不是正确的方法。请改用filter_input()函数