我创建了这个简单的脚本,它要么设置一个包含三个值的 cookie,要么检索已设置的 cookie 值。在我运行 PHP4 的服务器上,一切正常。在我使用 PHP 5 (5.2.11) 的服务器上,脚本无法在浏览器中设置 cookie。我已经检查了是否在我的 php.ini 中启用了输出缓冲,它是。有没有人知道为什么这不起作用?
<?php
echo "<!DOCTYPE html>";
echo "<body>";
if (!isset($_COOKIE['taeinv'])) {
echo "No cookie set... Attempting to set a new cookie.";
$user = "testuser";
$role = "admin";
$expire = "true";
$halfHour = 1800;
setcookie("websitename[Expire]", $expire, time()+$halfHour);
setcookie("websitename[User]", $user, time()+$halfHour);
setcookie("websitename[Role]", $role, time()+$halfHour);
}
if (isset($_COOKIE['websitename'])) {
echo "Cookie Values:";
echo "<br />";
foreach ($_COOKIE['websitename'] as $name => $value) {
echo "<b>$name</b> : $value <br />\n";
}
}
echo "<br />";
echo "<a href=logout.php>Logout</a>";
echo "</body>";
echo "</html>";
?>