限制对PHP上的管理按钮的访问

时间:2018-06-22 11:18:59

标签: php mysql admin access restrict

对于某些按钮,我具有以下代码,我希望普通用户能够单击“读取”按钮

<?php
    include 'database.php';
    $pdo = Database::connect();
    $sql = 'SELECT * FROM customers ORDER BY id DESC';
    foreach ($pdo->query($sql) as $row) {
      echo '<tr>';
      echo '<td>'. $row['name'] . '</td>';
      echo '<td>'. $row['email'] . '</td>';
      echo '<td>'. $row['mobile'] . '</td>';

      echo '<td>'. $row['user_type'] . '</td>';
      echo '<td width=250>';
      echo '<a class="btn" href="read.php?id='.$row['id'].'">Read</a>';
      echo ' ';
      echo '<a class="btn btn-success" href="update.php?id='.$row['id'].'">Update</a>';
      echo ' ';
      echo '<a class="btn btn-danger" href="delete.php?id='.$row['id'].'">Delete</a>';
      echo '</td>';
      echo '</tr>';
    }
    Database::disconnect();
?>

我在MySQL DB上有2个字段(user_type(枚举)和userRoleID(int)) 我已经尝试了一些代码,但是很遗憾地删除了它,所以我想知道是否有人可以给我一些限制普通用户访问该按钮的方法的示例。请帮助,我正在研究大约1 / 2周,即使经过大量搜索,我仍然可以弄清楚该怎么做。谢谢!

2 个答案:

答案 0 :(得分:0)

只需根据用户角色或类型将按钮包装在if()语句中

if($row['user_type'] == 'normal user') { ......}

使用诸如!===之类的条件性卡路里来满足您的需求

答案 1 :(得分:0)

尝试

if($row['user_type']!="normaluser")
{
  echo '<a class="btn btn-success" href="update.php?id='.$row['id'].'">Update</a>';
  echo ' ';
  echo '<a class="btn btn-danger" href="delete.php?id='.$row['id'].'">Delete</a>';
}