PHP的用户级别

时间:2013-11-20 01:32:52

标签: php login

我要做的是使其在我的数据库中设置特定用户级别时显示特定文本。这是我的代码。

$userget = mysql_query("SELECT * FROM `usertable` WHERE `username`='".$_SESSION['user']."'");
$user = mysql_fetch_array($userget);

function getUserlevel() {
    if($user['userlevel'] == '1') { echo "Regular User"; }
elseif($user['userlevel'] == '2') { echo "Moderator"; }
elseif($user['userlevel'] == '3') { echo "Administrator"; }
else { echo "Undefined"; }
}

我知道该函数正在运行,因为未定义的Echo工作,我将其设置为测试但其他人不工作,尽管我的用户级别设置为3并且仅回显Undefined。还会为用户登录时设置会话。

这是调用函数的时候。

<div class="userData">Welcome Back, <?php echo $_SESSION['user']; ?><hr /><?php 
getUserlevel(); ?></div>

3 个答案:

答案 0 :(得分:0)

好的,我准备好了:

getUserlevel($user['userlevel']);

function getUserlevel($usrlvl) {
    if($usrlvl == '1') { echo "Regular User"; }
elseif($usrlvl == '2') { echo "Moderator"; }
elseif($usrlvl == '3') { echo "Administrator"; }
else { echo "Undefined"; }

}

答案 1 :(得分:0)

我只是将查询包含在函数中,并且其工作:P

var node = document.getElementById("SER");
node.oninput=function(){document.getElementById('Log').innerHTML+='selectionStart / selectionEnd:'+this.selectionStart + '/'+ this.selectionEnd+'\n';

答案 2 :(得分:-1)

您无法以$ user [userlevel]的身份访问$ user,因为mysql_fetch_array返回一个数组。如果不使用id而不是使用用户名,则用户名是否唯一。所以你应该编写如下函数

 function getUserlevel()
 {
         foreach($user as $u)
         {
            if($u['userlevel'] == 1){echo "Regular User";}
            else if($u['userlevel'] == 2){echo "Moderator";}
            else if($u['userlevel'] == 3){echo "Administrator";}
            else{echo "Undefined";}
         }
  }

如果不起作用,请确保您已编写了一个虚拟mysql查询