我对这个问题感到十分困惑。设置cookie应该是世界上最简单的事情,但无论出于什么原因它都不起作用。目前我只是想让测试脚本工作。它看起来像这样:
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + 86400 * 30, "/");
setcookie("act", "sj", time() + 86400 * 365);
setcookie("bbba", "Hello", time() + 86400);
echo $_COOKIE['act'];
echo $_COOKIE['bbba'];
echo $_COOKIE['user'];
这些Cookie都不会设置。什么都不会回响,我在使用检查员时找不到饼干。我尝试过以下方法: - 将echo $ _COOKIE放在同一目录中的另一个文件中。 - 有和没有ob_start()和ob_flush() - 使用" /"," / direcotry"并没有任何东西作为道路 - 将文件移动到根目录以查看它是否在那里工作。
似乎没什么用,我看不出可能出错的地方。使用cookie的其他脚本正在同一个域上运行 - 该域位于Web酒店。
有人能在这看到问题吗?
答案 0 :(得分:2)
在下次加载页面之前,Cookie才会显示 cookie应该是可见的。测试cookie是否成功 设置,检查cookie之前的下一个加载页面上的cookie 到期。过期时间通过expire参数设置。一个很好的方式 通过简单调用来调试cookie的存在 的print_r($ _ COOKIE);
这是来自php手册。您可以手动设置$ _COOKIE数组中的值,如果您真的希望它在声明的同一页面中。
$_COOKIE['key'] = 'value';
echo $_COOKIE['key'];
答案 1 :(得分:1)
问题是由文档开头的空格引起的。