在php中设置cookie

时间:2010-04-20 02:06:20

标签: php cookies

我正在尝试设置一个cookie,因为我收到了错误,所以错了。

警告:setcookie()期望参数3为long,第6行的/home/admin/domains/domain.com.au/public_html/setcookie.php中给出字符串

<?php
$cookie_name = "test_cookie";
$cookie_value = "test_string";
$cookie_expire = "time()+86400";
$cookie_domain = "localhost";
setcookie($cookie_name, $cookis_value, $cookie_expire, "/", $cookie_domain, 0);
?>
<HTM>
<HEAD>
</HEAD>
<BODY>
<h1>cookie mmmmmmm</h1>
</BODY>
</HTML>

3 个答案:

答案 0 :(得分:6)

您将值time()+86400作为字符串传递。这是因为你用引号括起来了。

可能你想做的事情:

$cookie_expire = time()+86400;

这将导致将值评估为数字而不是字符串。

答案 1 :(得分:2)

上面给出的两个提示都是正确的;你实际上是试图通过这种方式将字符串传递给setcookie函数。

放弃“s”,你应该做得很好。

顺便说一句,如果你再次遇到类似的情况,请尝试使用var_dump PHP函数(...或者调试器),它可以告诉你变量包含什么(数据和类型) 。然后你可以发现确切的问题是什么,你可以回到它的来源,以便快速修复它...

答案 2 :(得分:1)

$cookie_expire = time()+86400;

请参阅有关变量类型的PHP手册:

http://us3.php.net/manual/en/language.types.intro.php