[英]Login using session error: net::ERR_TOO_MANY_REDIRECTS
I'm trying to use the session system to create a login however, I keep getting a redirect error. 我正在尝试使用会话系统创建登录名,但是,我一直收到重定向错误。 Once I enter the correct username (Admin) and password (murphy1) the page refreshes and I get this error in the console:
输入正确的用户名(Admin)和密码(murphy1)后,页面将刷新,并且在控制台中收到此错误:
net::ERR_TOO_MANY_REDIRECTS
净:: ERR_TOO_MANY_REDIRECTS
Now if I simply refresh the page it logs in or if I reenter the username and password a second time a post the results again it logs in. Could someone please refer me to where I'm going wrong here, I would really appriate it? 现在,如果我只是刷新它登录的页面,或者第二次重新输入用户名和密码,然后再次登录,结果就会登录。有人可以向我介绍我在这里出问题的地方,我真的会感到高兴吗?
<?php
ob_clean();
session_start();
if (isset($_SESSION['loggedin']) || $_SESSION['loggedin'] == true){
header("Location: SeniorManagersSiteTour.php");
}
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
$Username = $_POST['username'];
$Password = $_POST['password'];
if ($Username == 'Admin'){
if($Password == 'murphy1'){
$_SESSION["loggedin"] = true;
$Error = "00";
}
else{
$Error = "01";
}
}
else{
$Error = "02";
}
}
?>
Your if
statement is wrong. 您的
if
陈述有误。
It will work if you change it to: if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true)
如果将其更改为:
if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true)
,它将起作用。
Reason: If you pass a session variable to isset
function without other check it can assume it's true. 原因:如果将会话变量传递给
isset
函数而不进行其他检查,则可以认为它是正确的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.