【问题标题】:PHP Cookie Basics [duplicate]PHP Cookie 基础 [重复]
【发布时间】:2017-12-01 12:38:58
【问题描述】:

我有以下代码:

<?php
$cookie_name = "offer";
$cookie_value = "signup";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<?php
if(!isset($_COOKIE[$cookie_name])) {
echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
echo "Cookie '" . $cookie_name . "' is set!<br>";
echo "Value is: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>

当我在浏览器中打开页面时,cookie 未设置。 然后,当我刷新页面时,cookie 已设置。

为什么第一次加载时没有设置?

谢谢。

【问题讨论】:

  • "为什么在第一个页面加载时没有设置?" — 因为浏览器没有针对该请求将 cookie 发送到服务器。

标签: php cookies


【解决方案1】:

$_COOKIE 包含随请求发送的 cookie。由于您只是在之后(收到请求时)设置 cookie,$_COOKIE 不包含 cookie。但是 cookie 设置成功(例如检查您的浏览器)

【讨论】:

    猜你喜欢
    • 2012-05-28
    • 1970-01-01
    • 1970-01-01
    • 2013-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-15
    • 2012-10-05
    相关资源
    最近更新 更多