检查多个用户名以显示编辑权限

时间:2011-05-06 09:48:08

标签: php

我的网站上有一个编辑按钮,供用户编辑他们编写的评论。它仅出现在已登录用户通过执行此检查而写入的帖子上。

if($rows['name']===$_SESSION['myusername']

我想允许管理员帐户也能够编辑任何帖子。如何将admin的用户帐户添加到此处?

提前致谢!

2 个答案:

答案 0 :(得分:0)

添加if语句或条件以检查当前用户是否为admin。

if( $rows['name']===$_SESSION['myusername'] || $_SESSION['idAdmin'] ) {...}

答案 1 :(得分:0)

您应该确保检查每个登录并将用户权限传递给变量,例如:

$_user['loggedin'] = false;
if(isset($_SESSION['myusername']) && isset($_SESSION['mypassword'])) {
  $q = mysql_query("SELECT * FROM users WHERE username = '".mysql_real_escape_string($_SESSION['myusername'])."' AND password = '".mysql_real_escape_string($_SESSION['mypassword'])."'");

  if(mysql_num_rows($q) == 1) {
    $_user = mysql_fetch_assoc($q);
    $_user['loggedin'] = true;
  }
}

现在假设您的数据库中有一个字段'is_admin',您可以在支票中使用这段代码:

if($rows['name'] == $_SESSION['myusername'] OR ($_user['loggedin'] && $_user['is_admin'])) { // perform action }