我需要一个代码将特定用户重定向到一个页面,将其他所有人重定向到另一个页面。这就是我所拥有的。
if(isset($_POST['submitted']))
{
if($fgmembersite->Login())
{
$fgmembersite->RedirectToURL("login-home.php");
}
}
?>
我需要用户“megan”密码“megan”去admin.php和其他人登录home.php
我可以这样做:if ($_SESSION['username'] === "megan") {
header('Location: admin.php');
}else{
header('Location: login-home.php');
}
对不起,我很新!我还是不明白其中的一些。
哦,如果我能做第二段代码,我该如何将它与第一块代码结合起来?
答案 0 :(得分:0)
这样做:
if ('megan' === $_SESSION['username'] && 'megan' === $_SESSION['password']) {
header('Location: admin.php');
} else {
header('Location: login-home.php');
}
答案 1 :(得分:0)
您应该考虑为每个用户使用组。例如,您可以在users表中创建一个组字段(用户名和密码保存在该表中),该字段可以存储组号。然后在检查用户身份验证后(通过从数据库中提取用户并根据输入的用户名和密码对其进行验证),您只需检查组字段(从提取的记录中)以将其重定向到特定页面。
例如,在验证用户名和密码后,您可以使用:
switch($group) {
case '1':
header('Location: admin.php');
break;
case '2':
header('Location: login-home.php');
break;
default:
// any other location you want to redirect
}
通过使用此方法,您可以让许多用户属于同一个组并重定向到特定页面(基于组号)。这比检查个人用户名更好。
只需2美分;)
答案 2 :(得分:0)
我明白了,这就是我所做的。
<?PHP
require_once("./include/membersite_config.php");
session_start();
$users['admin'] = array('password' => 'admin', 'redirect' => 'admin.php');
$users[$username] = array('password' => $password, 'redirect' => 'login-home.php');
if(array_key_exists($_POST['username'],$users)) {
if($_POST['password'] == $users[$_POST['username']]['password']) {
$_SESSION['loggedIn'] = true;
header('Location:'.$users[$_POST['username']]['redirect']);
exit();
}
else {
// invalid password
header('location: login.php');
exit;
}
}
else {
// invalid username
header('location: login.php');
exit;
}
if(isset($_POST['submitted']))
{
if($fgmembersite->Login())
{
$fgmembersite->RedirectToURL("login-home.php");
}
}
?>
但由于某种原因,有时页面不会加载。有什么想法吗?
好的,我正在使用它大约一个小时,然后它只是停止工作......我没有想法。我能得到一些帮助。