cookie值未显示

时间:2013-12-28 18:00:18

标签: php cookies

这是我的代码:

    <?php 
    $friendid = 10;
    $friendname = "enco";

    $max=count($_COOKIE['rooms']); 
    $i = $max + 1;

    setcookie("rooms[$i]['type']", "1on1", time() + 3600, "/", ".mywebsite.com");
    setcookie("rooms[$i]['name']", $friendname, time() + 3600, "/", ".mywebsite.com");
?>

以下代码位于另一页:

<?php
    $max=count($_COOKIE['rooms']); 

$k = 0;
for($k = 0; $k<$max; $k++) {
    echo "Cookie 1 show: " . $_COOKIE['rooms'][$k]['type'] . "<br /><br />";
    echo "Cookie 2 show: " . $_COOKIE['rooms'][$k]['name'] . "<br /><br />"; 
    }
    ?>

但它不起作用。 当我尝试像上面的例子中那样回应cookie时,什么都没有出现。

我的问题是: 这些结构是否正确:

setcookie("rooms[$i]['type']", "1on1", time() + 3600, "/", ".mywebsite.com");
setcookie("rooms[$i]['name']", $friendname, time() + 3600, "/", ".mywebsite.com");

为了在另一个页面中显示这些内容(不在编写cookie的同一页面中):

echo "Cookie 1 show: " . $_COOKIE['rooms'][$i]['type'] . "<br /><br />";
echo "Cookie 2 show: " . $_COOKIE['rooms'][$i]['name'] . "<br /><br />";

由于

1 个答案:

答案 0 :(得分:2)

PHP的超级全局_GET,_POST,_REQUEST,_COOKIE都是在脚本启动时创建的,然后在脚本执行期间由PHP修改 NEVER

因此,在您运行此代码的 NEXT 时间之前,您使用setcookie()创建的Cookie将无法在_COOKIE中使用。