我有一个名为users
的mysql表,其中包含以下字段:
username - password - role
角色由普通用户和管理员组成。
我想要的是,当管理员登录时,它会被重定向到另一个页面,而不是正常用户登录的同一个页面。我的代码如下:
<?php
include("../includes/db.php");
$username=$_POST['username'];
$password=$_POST['password'];
$username = stripslashes($username);
$password = stripslashes($password);
$username = mysql_real_escape_string($username);
$password = mysql_real_escape_string($password);
$sql="SELECT * FROM Users WHERE username='$username' and password='$password' And role = 'normaluser'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1){
session_register("username");
session_register("password");
header("location:myaccount.php");
}
?>
我让代码为普通用户工作,但我不知道如何为管理部分编写代码。
最佳答案
我想说
$sql="SELECT role FROM Users WHERE username='$username' and password='$password'";
$result=mysql_query($sql);
while ($row = mysql_fetch_object($result)) {
//one hit i hope?!
//DONT save your apssword in the session!!!!
//session_register("username");
//session_register("password");
$role = $row->role;
}
if($role == "user"){
redirect1
}elseif($role == "admin"){
redirect2;
}else{
redirect panic
}
关于php - PHP If/Else语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8606492/