2012-04-23 70 views
-1

也许有更好的方法来使用cookie。但我想设置在我的PHP的东西告诉用户一个错误,但只有它一次,如果他们刷新页面,我不希望它那里了。PHP cookie只设置1秒?

$time = (1000); 
setcookie("msgtype", $type, time() + ($time), '/'); 
setcookie("msg", $message, time() + ($time), '/'); 
print_r($_COOKIE); 

所以,出于某种原因,如果我输出的$ _COOKIE后直接它仍然不会显示这个cookie。

任何想法?

回答

1

相反,示出了误差清除该cookie,而不是将其设置为1秒,以便当它刷新下一次&检查该cookie也不会是当在那里,所以不会显示任何错误。

Or a better option would be using sessions.

+0

这是真的....我的逻辑似乎有瑕疵 – 2012-04-23 23:23:19

+0

是的,当使用会话设置到无限(大值)的过期时间,并在任务结束时销毁cookie。 – gopi1410 2012-04-23 23:26:05

+0

感谢您的帮助:) – 2012-04-23 23:31:10

1

你不需要为此使用cookies,使用SESSION听起来很合理。

$_SESSION['error'] = 'soem message'; 
//Use it when you need and simply remove it afterwards 
echo $_SESSION['error']; 
unset($_SESSION['error']); 
+0

你们,我想这次。我原来的版本是1,1毫秒,因为它会在同一个脚本中处理。但为了解决问题,我把它放到了1000 – 2012-04-23 23:20:50

+0

@JamieHutber,请参阅更新 – Starx 2012-04-23 23:22:07

+0

非常感谢,grr浪费时间:p刚刚在页面上添加了未设置的内容,而不是试图巧妙地做到这一点。 – 2012-04-23 23:30:36

0

在你,我们将使用会话组

例如:

session_start() 
$_SESSION['error'] = 1; 

时,你会显示错误使用:)

unset($_SESSION['error']; 

$_SESSION['error'] = 0; 

这将取决于使用:)