- 分享
- 0
- 人气
- 0
- 主题
- 7
- 帖子
- 4707
- UID
- 82675
- 积分
- 5108
- 阅读权限
- 22
- 注册时间
- 2007-6-18
- 最后登录
- 2021-7-27
- 在线时间
- 5767 小时
  
|
原帖由 soochen 于 2009-7-14 01:00 PM 发表 
是这样的
当我在第一行set了cookie之后在第二行我echo 出来时拿不到的
必须refresh一次那个page 才拿得到
就是说当我:
setcookie('testingcookie', 'testvalue', time()+3600*24);
echo $_COOKIE['testingcookie'];
然后我看不到 'testvalue'
当我refresh page 之后才看到
于是当我尝试这样:
setcookie('testingcookie', '', time()-999999999999);
setcookie('testingcookie', 'testvalue', time()+3600*24);
echo $_COOKIE['testingcookie'];
我先clear掉旧的 再set新的 然后再echo
可是因为我每次都要refresh后才看得到
所以如果我这样放的话
不管怎么refresh我都看不到 testvalue
请问有谁知道哪里出错吗?
setcookie 之後是必須刷新頁面方可獲取值
而你第一行 time() - 9999999..... 這行不知道你是否了解時間只要小於當前 server 時間即是 expire cookie
既然 expire 了, 必然就無法再取得 cookie 的值, 所以不管你如何刷新都是無法取得你想要的 cookie 值
要使用 cookie 的話你可以這樣設定
if(!isset($_COOKIE['testingcookie']))
setcookie('testingcookie', 'testvalue', time()+3600*24)
這樣一天之內該 cookie 值則有效而能夠被讀取 |
|