<?
if($_POST["Login"])
{
if (GetRightPassword($_POST["emaillogin"],$_POST["passwordlogin"]))
{
$_SESSION["email"] = $_POST["emaillogin"];
$_SESSION["password"] = $_POST["passwordlogin"];
echo "Keeping logged in: ".$_POST["keeploggedin"];
if ($_POST["keeploggedin"])
{
setcookie("email", $_POST["emaillogin"], time()+60*60*24*365);
setcookie("password", $_POST["passwordlogin"], time()+60*60*24*365);
}
}
else
{
echo "Invalid username/password!";
}
}
if($_POST["Logout"])
{
$_SESSION["email"] = null;
$_SESSION["password"] = null;
setcookie("email", "", time()-900000);
setcookie("password", "", time()-900000);
}
echo $_COOKIE["email"];
?>
这是唯一的代码(据我所知,我在6个月之前编写了最小代码,但我很确定没有更多代码)写入cookie或会话。
当我点击注销时,它会使会话变量为空,所以当页面加载时,我已经注销 - 再次更改页面或刷新,然后我又重新登录。
任何想法为什么?我改变页面时没有发送登录,所以我不知道为什么。
如果有帮助,echo $ _COOKIE [“email”];即使只是将电子邮件设置为“”,也可以回复您的电子邮件。
修改
我刚刚找到了与此相关的更多代码。
此代码在 代码之前运行。
if(isset($_COOKIE["email"]))
{
$_SESSION["email"] = $_COOKIE["email"];
$_SESSION["password"] = $_COOKIE["password"];
}
答案 0 :(得分:1)