设置Cookie不起作用
这不是每次我加载页面时都会增加吗?导致它没有这样做,其结束于2
,当我用代码打开其他页面时,它告诉我没有设置$_COOKIE['count']
。设置Cookie不起作用
if(!isset($_COOKIE['count'])){
setcookie("count", 1, time() + 31536000);
} else {
setcookie("count", $_COOKIE['count']++, time() + 31536000);
}
好了,所以答案递增问题由于其固定+ 1级你的球员,但第二个问题依旧是:
确定,所以现在它的正常递增但问题2仍是相同的1页,例如index.php,当我转到其他页面时cookie的值为15 second.php的值是5当我刷新它的6时,我回到index.php的值是16.任何想法?
好吧,所以我有2个问题。首先是增量部分(但我只是测试值是否变化并不真正需要增量部分),第二个是页面之间的混合。 。为什么不同的页面有不同的值不堆叠。这个问题的答案是。 。我没有为path parameter
设置一个值,直到那时我才意识到这是需要的。我认为这是因为我的url rewrites
不确定,但只是一个预感。但无论如何,路径参数为我固定。
如果你们陷入同样的麻烦只是一个值添加到路径PARAM同时设置你的cookies,像这样:
的setcookie( “cookiename”,$ cookievalue,$ cookielifespan, '/');
如果路径参数是设置为'/'
cookie将是整个域
有关详细信息中提供只是检查manual,干杯!
将$_COOKIE['count']++
更改为$_COOKIE['count']+1
或++$_COOKIE['count']
,代码将完美工作。
$a = 1;
$b = $a++; //with the $a++ syntax, $b is set to $a's old value first,
//and then $a is increased
//$b = 1, $a = 2
$a = 1;
$b = ++$a //with the ++$a syntax, $a is incremented first
//and then $b is set to (incremented) $a
//$b = 2, $a = 2
所以,你需要做的++$_COOKIE['count']
,因为你想让它传递给之前的setcookie增加cookie值。
好吧,现在它的正确增加,但问题2仍然是相同的1页,例如index.php,当我转到其他页面时cookie的值为15 second.php的值是5当我刷新它的6时,我回到index.php的值是16.任何想法? –
这两个页面都在同一个确切的域名? –
这两个页面都在同一个域中,我正在同一浏览器上浏览页面 –
好了,现在它的增加正常,但问题2仍然是相同的1页,例如index.php“时,当我转到其他页面时,Cookie的值为'15'。 second.php'当我回到'index.php'时,当我刷新它的'6'时,值是'5',值是'16'。有任何想法吗? –
@Deadpool您是否正在浏览不同浏览器的网页? – 2013-12-20 11:12:51
不同浏览器相同的域名。 –