您好我有问题。
当没有人可用时,我使用以下函数创建一个cookie。
问题是,当浏览器关闭并再次打开时,此功能再次创建Cookie ...即使它已经存在..所以每次用户打开和关闭浏览器时,都会创建并创建此cookie再次..
这对我来说真的很糟糕。我该如何避免这个问题?
我的功能出了什么问题?
由于
<?php
function GenerateTuittingID()
{
$todaydate = date('Ymd');
$time = mktime(date('G'), date('i'), date('s'));
$NowisTime = date('Gis', $time);
$random_numbers = substr(number_format(time() * rand(), 0, '', ''), 0, 10);
$random = $random_numbers . $todaydate;
if (!isset($_COOKIE["tuittingID"])) {
setcookie("tuittingID", $random, mktime(0, 0, 0, 12, 31, 2015));
}
}
?>
答案 0 :(得分:1)
我发现您的代码没有问题
答案 1 :(得分:1)
Cookie可以从不一次又一次地创建 -
如果它已经存在则会被覆盖,否则,如果它不存在则会被创建。确保浏览器在关闭时不清除cookie。
答案 2 :(得分:0)
1)打开浏览器设置,转到Privacy
。
2)点击Use custom settings for history
。
3)确保Keep Until
旁边的下拉列表They Expire
。如果没有,请更新它并按好。
4)如果这解决了你的问题,请告诉我。
修改(刚刚看到您的评论)
在Cookie上设置路径和域,以便可以从整个站点访问它们:
setcookie("tuittingID", $random, mktime(0, 0, 0, 12, 31, 2015),
'/', '.yourdomain.com');