我是cookies的新手,我试图设置一个cookie来存储引荐者(org ref)。
但是当我尝试这个功能时:
function do_it_cookie() {
// Check if cookie exists
if (isset($_COOKIE['ref'])) {
// It dose exist, do nothing or anything...
} else {
setcookie ('ref', $_SERVER['HTTP_REFERER'], time() + 60, '/');
header ("Location: http://www.nyttforetag.com/mind-your-own-business/");
}
}
我想将cookie存储在用户计算机上30天,如果返回我想知道最初的裁判网址。
但是当我使用它时,让我说我去我网站的另一个页面,然后回到主页,它设置一个新的cookie,其名称与前一页的ref相同。
有没有避免这种情况?
答案 0 :(得分:1)
现在你的cookie存储时间为60秒。
time()+60*60*24*30 //this makes store it for 30 days.
来自php.net expire
-
Cookie过期的时间。这是一个 Unix时间戳也是如此 自纪元以来的几秒钟。其他 话说,你最有可能设置这个 使用time()函数加上 你想要它之前的秒数 直到到期为止。或者你可以使用mktime()。 time()+ 60 * 60 * 24 * 30将设置cookie 在30天后到期。如果设置为0,或 省略,cookie将在到期时到期 会话结束时(浏览器时) 闭合)
答案 1 :(得分:0)
First Point,请设置每天唯一的cookie名称。 请在日期中添加Cookie名称。 仅在主页或首页中设置cookie。 30天,您可以使用计算时间()+ 60 * 60 * 24 * 30.