【问题标题】:Display button based on database role [closed]基于数据库角色的显示按钮[关闭]
【发布时间】:2017-01-27 10:46:28
【问题描述】:

我有一个带有 PHP 前端的 MySQL 数据库。在 PHP 中是否可以在 button 上创建类似 admin 权限 的东西?我可以将我的“下载”button 权限设置为只有 admin 可以访问它吗? (只有管理员可以下载excel 表和一些信息)

对不起,我的英语不好。

【问题讨论】:

  • 是的。你可以。但是你不会找到“向 php 添加权限按钮”,就像在五金店找不到名为“建房子”的工具一样。
  • 超级管理员和用户有什么区别?
  • 您可能会搜索“PHP 如何创建管理页面”或类似内容。或用于创建条件按钮的页面的管理部分
  • @Marc B 我知道这并不容易......我只需要帮助如何找到类似的东西
  • @SHAZ 我在 mysql 中为管理员和一些用户创建了两个表并卡在那里:D

标签: php mysql database roles


【解决方案1】:

STEP-1:当您成功验证用户登录时,分配一些标志,例如 $_SESSION['flag'] = "user";。对 admin 执行相同操作,例如:$_SESSION['flag'] = "admin";

<?php
   ob_start();
   session_start();
   ......
   // login successful, then assign session 
   $_SESSION['flag'] = "admin";   
   // or for normal user
   $_SESSION['flag'] = "user";

第 2 步: 使用此会话变量来识别用户是管理员还是普通用户,并显示或隐藏下载按钮,例如:

<?php 
  ob_start();
  session_start();

  if(isset($_SESSION['flag']) && !empty($_SESSION['flag']) && $_SESSION['flag']=="admin"){
       // code here for admin - show download button as you want!
       echo "<button id='btn_download'> Download </button>";
  } // else { // code here for normal user }

?>

【讨论】:

  • 干得好!我会试试看。谢谢。
  • 我相信您应该根据他/她在服务器端的登录令牌检查用户的角色。如果你让它成为会话状态的一部分,那么坏人只会在客户端启用它。另见How to set up user roles and permissions?
  • 我现在用 ftp 用户权限解决了这个问题,但是将来我需要做一些更好的事情。这个链接看起来不错,我会尝试类似的东西。我正在从事的项目不面向公众,因此 ftp 用户做得很好。我现在停留在愚蠢的报告上,当我解决它时,我会尝试让登录更好。万分感谢。 :)
猜你喜欢
  • 2019-12-09
  • 1970-01-01
  • 1970-01-01
  • 2010-12-21
  • 1970-01-01
  • 1970-01-01
  • 2019-01-13
  • 2020-08-02
  • 2013-03-24
相关资源
最近更新 更多