这是我第一次涉足cookie。我无法让它工作,所以我从w3schools复制并粘贴了这个例子。在"试试吧!"它的网站上的页面有效,但是当我在本地主机上运行我自己文件中的代码时,它并没有设置cookie。它输出" Cookie命名为'用户'没有设置!"每一次。
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
if(!isset($_COOKIE[$cookie_name])) {
echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
echo "Cookie '" . $cookie_name . "' is set!";
echo "Value is: " . $_COOKIE[$cookie_name];
}
这不会重定向页面或任何内容。它只是没有设置cookie。我正在使用Chrome和MAMP。 Chrome已启用Cookie,并且php.ini中的Cookie显然也已启用。我也试过在firefox和safari中运行它。请帮我理解
答案 0 :(得分:0)
setcookie()
定义了与其他HTTP标头一起发送的cookie。与其他标头一样,必须在脚本的任何输出之前发送cookie(这是协议限制)。这要求您在任何输出之前调用此函数,包括和标记以及任何空格。
设置完cookie后,可以在下一页加载$ _COOKIE数组时访问它们。 Cookie值也可能存在于$ _REQUEST。
中