0

我有一个脚本,我在其中设置了 2 个 cookie:

$month = time() + 60 * 60 * 24 * 30;
setcookie('id', $id, $month, '/');
setcookie('auth', $auth, $month, '/');
header('Content-Type: text/html; charset=utf-8');
print('<html><body>...etc....');

这确实很好用,但是:一些用户有多个 id,这取决于他们通过 iframe 从哪个页面(社交网络)访问我的脚本。

拥有多个 id 的用户不是问题。但我的问题是,当我让那个人查看他的 cookie 时,他会报告说有几个名为idauth的 cookie 。我也可以自己复制它。

我实际上期望总是只有 1 个id和 1 个auth cookie。

我可以在这里做什么?

用新值调用setcookie('id', ...)不会替换旧值吗?

谢谢!亚历克斯

4

1 回答 1

1

Cookies 基于 KV 方案(Key=Value)概念,并且 Key 充当唯一标识符。

的三个主要效应器setcookie

  • 创造
    • 创建一个cookiesetcookie("id","value")
    • 读取 cookie$_COOKIE["id"]
  • 更新
    • setcookie("id","new value")
  • 删除
    • 通过设置过去的过期时间来删除setcookie ("TestCookie", "", time() - 10);

所以是的,你的问题是正确的,你应该看看其他可能阻止 cookie 状态的因素。

于 2011-02-20T17:32:33.353 回答