Php 根据登录名将两个不同的用户重定向到不同的页面
我想能够重定向一个用户到一个不同的页面根据他们的登录名。目前,下面的代码将所有用户重定向到同一页面(role.php),不管他们的登录名是什么。我有两个用户:学生和导师。这两个用户都被重定向到role.php。 但是,我想将学生用户重定向到role.php,将导师用户重定向到record.php。我考虑过如果member_id为1,则执行几个if语句,然后重定向到role.php,如果member_id为2,则重定向到record.php。但他无法做到这一点 检查登录凭据的成员表的表结构如下所示: 会员编号:1或2 登录:学生,导师 passwd:每个用户的单独密码–使用md5加密 任何帮助都将不胜感激。谢谢Php 根据登录名将两个不同的用户重定向到不同的页面,php,mysql,redirect,login,Php,Mysql,Redirect,Login,我想能够重定向一个用户到一个不同的页面根据他们的登录名。目前,下面的代码将所有用户重定向到同一页面(role.php),不管他们的登录名是什么。我有两个用户:学生和导师。这两个用户都被重定向到role.php。 但是,我想将学生用户重定向到role.php,将导师用户重定向到record.php。我考虑过如果member_id为1,则执行几个if语句,然后重定向到role.php,如果member_id为2,则重定向到record.php。但他无法做到这一点 检查登录凭据的成员表的表结构如下所示
//Create query
$qry="SELECT * FROM members WHERE login='$login' AND passwd='".md5($_POST['password'])."'";
$result=mysql_query($qry);
//Check whether the query was successful or not
if($result) {
if(mysql_num_rows($result) == 1) {
//Login Successful
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['member_id'];
session_write_close();
header("location: role.php");
exit();
}else {
//Login failed
header("location: login-failed.php");
exit();
}
}else {
die("Query failed");
}
编辑:使用了Switch语句,但现在为所有用户重定向到record.php。我认为我没有正确使用Switch语句
$login="student";
$login="tutor";
switch ($login)
{
case "student":
header("location: role.php");
break;
case "tutor":
header("location: readonlystu.php");
break;
}
我想要一份关于这个角色的转换声明
switch($iRoleId)
{
case ROLE_STUDENT:
// do stuff
break;
case ROLE_TUTOR:
// do stuff
break;
}
目前,在switch语句中使用$login之前,您正在将其设置为“tutor”。@Moberg-我将其放在switch语句中,如下所示:switch($login){$login=“student”;$login=“tutor”;我该怎么办,现在真的迷路了,不知道该怎么办?我想韦斯利已经找到了一个可行的答案。无论如何,你不应该在代码中设置$login。它是在用户尝试登录时设置的,对吗?@Moberg-问题解决了。我按照你的建议删除了$login,它可以工作。