繁体   English   中英

向用户页面添加管理员访问权限

[英]Add admin access to user page

我创建了两个页面。 一个用于管理员,一个用于用户。 但是登录时有单独的访问权限。 我想在用户页面上授予对admin的访问权限。 我无法找到解决方案。

现在,如果我以管理员身份登录并尝试访问用户页面,它将把我重定向到登录页面,并且用户的情况相同。 那部分很好。

在登录表单中,我检查用户的角色,然后根据该角色将他们重定向到各自的页面。 在管理员和用户页面中,我首先检查用户的角色,如果角色不相同,则会将其重定向到登录页面。

现在我尝试的是在user_page.php中,我添加了两个角色user和administrator,以检查登录用户是管理员还是该用户。 但是那部分我无法弄清楚。

 <?php ob_start(); session_start(); include("db.php"); ?> <!DOCTYPE html> <html lang=""> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title></title> <style type="text/css"> .box { border: #666666 solid 1px; } label { font-weight: bold; width: 100px; font-size: 12px; } </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> </head> <body bgcolor="#FFFFFF"> <div align="center"> <div style="width:350px; border: solid 2px #333333; " align="left"> <div style="background-color:#333333; color:#FFFFFF; padding:4px;"><b>Login</b></div> <div style="margin:25px"> <form method="post" action=""> <?php if($_SERVER["REQUEST_METHOD"] == "POST") { $myusername1=mysqli_real_escape_string($con,$_POST['username']); $mypassword1=mysqli_real_escape_string($con,$_POST['password']); $mypassword=MD5($mypassword1); $sql="SELECT * FROM finforex_users WHERE username='$myusername1' and password='$mypassword1'"; $result=mysqli_query($con,$sql); $row=mysqli_fetch_array($result); $_SESSION['userid']=$row['userid']; $_SESSION['role']=$row['role']; $count=mysqli_num_rows($result); if($count==1) { if ($row['role']=="administrator") { header ("location: admin_page.php"); } else if ($row['role']=="user") { $_SESSION['role']=$row['role']; header ("location: user_page.php"); } } else { $error="Your Login Name or Password is invalid"; } } ?> <label>UserName :</label><input type="text" name="username" class="box" /><br /><br /> <label>Password :</label><br/><input type="password" name="password" class="box" /><br/><br /> <input type="submit" value=" Submit " /><br /> </form> <div style="font-size:11px; color:red; margin-top:100px"> <?php $error; ?> </div> </div> </div> </div> </body> </html> 

 <?php ob_start(); session_start(); include 'db.php'; if(isset($_SESSION['role'])=='administrator') { $query1= mysqli_query($con,"SELECT * FROM `finforex_users` WHERE `userid`='".$_SESSION['userid']."' AND `role`='administrator' "); $arr1 = mysqli_fetch_array($query1); $num1 = mysqli_num_rows($query1); if($num1==1) { ?> <html> <head> <style> body{ width:80%; margin: 0 auto; padding: 0; font-family: 'Open Sans', Tahoma, Arial, helvetica, sans-serif; } </style> </head> <body> <br> <h1 style="font-weight: 400;">Set Margins- Administrator</h1> <div style="float:right;"><a href="login.php">Logout</a></div> <a href="user_page.php">page 2</a> <?php } else { header ("location:login.php"); } } else header ("location:login.php"); ?> </body> </html> 

 <?php session_start(); include 'db.php'; if(isset($_SESSION['role'])=='user') { $query= mysqli_query($con,"SELECT * FROM `finforex_users` WHERE `userid`='".$_SESSION['userid']."' AND `role`='user' "); $arr = mysqli_fetch_array($query); $num = mysqli_num_rows($query); if($num==1) { ?> <style> { width:80%; margin: 0 auto; padding: 0; font-family: 'Open Sans', Tahoma, Arial, helvetica, sans-serif; } </style> <body> <h1 style="font-weight: 400;">Welcome User</h1> <div style="float:right;"><a href="logout.php">Logout</a></div> <?php } else { header ("location:login.php"); } } else header ("location:login.php"); ?> </body> 

将角色条件设置为

if(isset($_SESSION['role'])=='user' || isset($_SESSION['role'])=='administrator'){
// User Page 
// ....code ....
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM