我刚刚制作了一个PHP登录系统,并且我尝试根据您所使用的用户类型来显示不同的元素。当前,我具有用户,主持人和管理员,并且每种帐户类型在登录时都会显示不同的html元素,但是在注销时,我会收到“ Notice:Undefined index:”,因为我使用的是未定义的变量。我知道是什么原因造成的,我只是不知道如何解决它。
我能找到的所有与此问题有关的东西都是使用isset();。函数,但我不知道如何将其实现为现有的函数,这是一个示例:
if ($_SESSION['usertype'] == "admin") {
echo 'Hello '.$username.'You are an admin';
} elseif ($_SESSION['usertype'] == "mod") {
echo 'Hello '.$username.'You are a moderator';
} elseif ($_SESSION['usertype'] == "user") {
echo 'Hello '.$username.'You are a user';
} else {
echo "you are logged out";
}
我猜是因为我有$ username之类的变量,当我未登录时它没有任何值,所以它会吐出错误
如果有帮助,这些是登录后执行的所有会话:
$_SESSION['userID'] = $row['idUsers'];
$_SESSION['usernameID'] = $row['uidUsers'];
$_SESSION['emailID'] = $row['emailUsers'];
$_SESSION['usertype'] = $row['usertype'];
我尝试使用isset();每次会话,但我真的不知道我在做什么,或者它是否还能工作:
<?php if (isset($_SESSION['every session'])) {
if ($_SESSION['usertype'] == "admin") {
echo 'Hello '.$username.'You are an admin';
} elseif ($_SESSION['usertype'] == "mod") {
echo 'Hello '.$username.'You are a moderator';
} elseif ($_SESSION['usertype'] == "user") {
echo 'Hello '.$username.'You are a user';
} else {
echo "you are logged out";
}
}
?>
任何帮助都会得到极大的帮助。