设置cookie函数和phpinfo在php中不起作用,但在localhost工作中



我试图编写一个设置cookie的代码,并检查这个cookie是否显示按摩"cookie create"isset否则显示"cookie not create",但它不起作用 本地主机中的这段代码正常工作。

<html>
<head>
<?php setcookie("a","abcdef",time()+3600); ?>
</head>
<body>
<?php 
phpinfo(); 
if(isset($_COOKIE['a']))
{
echo $_COOKIE["a"];
}
else
{
echo "no cookie";
}
?>
</body>
</html>

正如 Stack Overflow 上的另一个问题所回答的那样,PHP - setcookie((; 不工作,您的 PHP 应用程序在尝试设置 cookie 之前发出 HTML 输出:

<html>  <------- oh no!
...
<?php setcookie("a","abcdef",time()+3600); ?>

此时,PHP 已经完成了 HTTP 标头的发送(不要与 HTML<head>标签混淆(,并且无法设置 cookie(必须作为HTTP 标头的一部分完成(。

先设置 cookie,你应该没问题:

<?php setcookie("a","abcdef",time()+3600); ?>
<html>
...

请确保在任何其他(非 HTTP 标头(输出之前调用setcookie()

相关内容

最新更新