【发布时间】:2018-01-18 00:22:04
【问题描述】:
我有 2 个单独的 PHP 文件,一个用于创建会话和 cookie,另一个用于销毁它们。我尝试通过在浏览器中手动输入他们的 URL 来一个接一个地加载,但它似乎不起作用。 (如果您担心的话,我已经在 cookie 中尝试了 'time ()' 属性。)
test.php
<?php
session_start();
echo '1s'.$_SESSION['uname'] ;
echo '1c'.$_COOKIE['usrid'] ;
$_SESSION["uname"] = "green";
setcookie("usrid", 'blue', strtotime( '+30 days' ), "/");
echo '2s'.$_SESSION['uname'] ;
echo '2c'.$_COOKIE['usrid'] ;
?>
注销.php
<?php
session_start();
$_SESSION = array();
session_destroy();
setcookie("usrid", '', strtotime( '-5 days' ), "/");
?>
我已经尝试一次又一次地重新加载页面,但仍然无法正常工作。
【问题讨论】:
-
你怎么知道会话没有被破坏?
-
重新加载 test.php 在 '1s' 和 '1c' 之后应该什么都没有。 @MehdiBounya
-
但是你是在打印它们之前设置cookie,当然它们会有一个值。
-
只有在创建之后,它才会出现在“2c”之后。这就是我的逻辑。如果我错了,请纠正我。
-
我的不好,第一次回显没注意,你用的是什么浏览器?