当变量用于cookie名称时cookie不设置

时间:2015-06-24 06:47:10

标签: php cookies

使用代码时在我的服务器上:

<?php
$expire=time()+60*60*24*360;

$cookie_name = 'user';
$cookie_value = "John";
setcookie($cookie_name, $cookie_value, $expire, "/");

$cookie_value = "Jane";
setcookie('userb', $cookie_value, $expire, "/");

print_r($_COOKIE);
?>

第一个cookie没有设置,但第二个cookie没有设置。出于某种原因,似乎使用变量来标识cookie名称会导致它无法设置。 我的localhost上不会发生此问题(一切都按预期工作)。所以我甚至不确定从哪里开始。

3 个答案:

答案 0 :(得分:2)

看起来好像是因为我有一个:

<!DOCTYPE html>
<?php之前的

这由于某种原因在本地工作正常,但不在我的服务器上。有什么建议吗?

答案 1 :(得分:0)

更改setcookie功能的参数然后尝试。
例如。

$expire=time()+60*60*24*360;
$cookie_name = 'user';
$cookie_value = "John";
setcookie($cookie_name, $cookie_value, $expire, "/");

$cookie_value1 = "Jane";
setcookie('userb', $cookie_value1, $expire, "/");

print_r($_COOKIE);

答案 2 :(得分:-1)

你不能使用超过1个setcookie功能。

<?php
$expire=time()+60*60*24*360;
$cookie_name = 'user';
$cookie_value = "John";
setcookie($cookie_name, $cookie_value, $expire, "/");
//$cookie_value = "Jane";
//setcookie('userb', $cookie_value, $expire, "/");
print_r($_COOKIE);
?>