SELECT rank FROM members WHERE?

时间:2017-07-10 00:59:40

标签: php sql

我已经编写了一个SQL查询和一个名为“username”的$ _SESSION cookie,基本上我要做的就是在数据库中查询“登录”用户排名,该排名包含在“成员”中的“rank”列中“我的数据库表。

这是我的标题代码,用于检查它们是否实际登录(否则会将它们重定向到登录页面)

session_start();
if (!isset($_SESSION['username'])) {
header("location:login/main_login.php");
}

AND这是我到目前为止查询的内容,但我完全不知道如何选择已登录的用户。 注意:我知道查询未完成

$result = $conn->query("SELECT rank FROM members WHERE  ");
$userrank = $result->fetchAll(PDO::FETCH_OBJ);

我还为MyRank设置了一个变量,以便我可以检查用户排名以显示特定内容。 (不确定这对我的查询是否真的很重要,但希望你能得到这个想法。)

$MyRank = $userrank[1]->rank;

编辑:其他信息。

所以基本上我试图根据用户在我的数据库中的排名来显示内容。 IE)如果他们是管理员,我想显示特定的HTML。如果他们是用户,我想显示一组不同的html。我当前这样做(这是不行的)是通过php if语句如此:

if ($MyRank == "Administrator"){
            echo adminpanel();
}else if ($MyRank == "User") {
echo userpanel();
}

基本上我遇到的问题是我的用户或管理员面板不会显示,除非我的数据库中的所有用户都是“管理员”或“用户”。如果该表中有管理员和用户,则根本不显示任何内容。

1 个答案:

答案 0 :(得分:0)

基于猜测:

$authUser = $_SESSION['username'];  // get the logged in user from session, guess this is the username

$result = $conn->query("SELECT rank FROM members WHERE username='$authUser';");
// if its userid then userid=$authUser without single quotes

$userrank = $result->fetchAll(PDO::FETCH_OBJ);