我有一个数据库,在数据库中我有一个用户类型为admin的用户。
一旦我创建了一个具有用户类型成员的新用户,我就无法登录我的登录页面。
它给我一个错误说:
localhost redirected you too many times.
PHP代码:
<?php
//checks if login session variable exist? If it does, display Logout
session_start();
if (isset($_SESSION['login']) && $_SESSION['login'] != "") {
//link to page logout.php and displays the word Logout + username
echo "<li><a href='logout.php'>Logout " . $_SESSION['login'] . "</a></li>";
if (isset($_SESSION['login']) && $_SESSION['usertype'] != "admin") {
echo ("<li><a href='profile.php'>Profile</a></li>");
} else {
echo ("<li><a href='AdminPage.php'>Administrator</a></li>");
}
if ($_SESSION['login'] == "") {
header("Location:login.php");
}
if ($_SESSION['login'] != "" && $_SESSION['usertype'] == "member") {
header("location:home.php");
}
} else {
//else link to pagelogin.php and display the word Login
echo ("<li><a href ='pagelogin.php'>Login</a></li>");
}
?>
还有 login.php 代码的图片:
答案 0 :(得分:0)
首先,如果要检查变量是否为空,则可以使用空(变量)。
然后更好地编写代码:
if(!empty($_SESSION['login']) && $_SESSION['usertype'] =="member")
{
header("location:home.php");
}
else if(empty($_SESSION['login']))
{
header("location:login.php");
}