php中的over是重定向

php中的over是重定向,php,mysql,Php,Mysql,请告诉我这个php多用户重定向代码需要帮助。当你 登录可以访问数据库,但我没有将用户重定向到其 页面 试试这个 <?php session_start(); require 'database-config.php'; $username = ""; $password = ""; if(isset($_POST['username'])){ $username = $_POST['username']; } if (isset($_POST['password'])) {

请告诉我这个php多用户重定向代码需要帮助。当你

登录可以访问数据库,但我没有将用户重定向到其

页面


试试这个

<?php 
session_start();
require 'database-config.php';

$username = "";
$password = "";
if(isset($_POST['username'])){
    $username = $_POST['username'];
}
if (isset($_POST['password'])) {
    $password = $_POST['password'];
}

$q = 'SELECT * FROM user_mgnt WHERE username=:username AND password=:password';
$query = $dbh->prepare($q);
$query->execute(array(':username' => $username, ':password' => $password));

if($query->rowCount() == 0){
    header('Location: index.php?err=1');
}else{
    $row = $query->fetch(PDO::FETCH_ASSOC);

    $_SESSION['sess_user_id'] = $row['id'];
    $_SESSION['sess_username'] = $row['username'];
    $_SESSION['sess_userrole'] = $row['role'];

    switch($row['role']){
        case 'Admin' : $redirectUrl = 'Dashboard.php'; break;       
        case 'Registrar' : $redirectUrl = 'Registration_Dashboard.php'; break;      
        case 'Accountant' : $redirectUrl = 'Account_Dashboard.php'; break;      
        case 'Employee' : default : $redirectUrl = 'emp_dashboard.php'; break;
    }
    header('Location: ' . $redirectUrl);
    exit();
}
?>


它的作用是什么?而不是
header
s执行
echo
s,以便查看它执行的内容。你也应该对你的密码进行哈希运算。如果没有,会发生什么?告诉我们更多信息它只显示角色和用户名,但不显示管理员或用户页面,但如果您能为我提供不同的代码,我将不胜感激,因此您可以进入
echo$\u会话['sess\u username']?如果是这样,则无法在
标题之前输出。启用错误报告,此线程将变得相关。谢谢。。。但它仍然不起作用。。。它只显示这个[Admin],而不显示管理页面[Dashboard.php]@Dennisjubin,我认为在你的
user\u mgnt
中没有
role
列。。。这是php脚本没有检查条件。。您能告诉我您的
用户\u mgnt
表结构不是一个值吗。如果不存在,请仅构造或检查您自己创建的表
user\mgnt
id
int(11)不为空,
username
varchar(255)不为空,
password
varchar(255)不为空,
role
varchar(255)不为空,
name
varchar(255)不为空,
Email
varchar(255)非空,
Status
varchar(255)非空)引擎=InnoDB AUTO_INCREMENT=40013默认字符集=1;Hifan现在正在我的本地主机上工作,但在我的域中不工作。然后,检查数据库连接,如域中的用户名和密码数据库
<?php 
session_start();
require 'database-config.php';

$username = "";
$password = "";
if(isset($_POST['username'])){
    $username = $_POST['username'];
}
if (isset($_POST['password'])) {
    $password = $_POST['password'];
}

$q = 'SELECT * FROM user_mgnt WHERE username=:username AND password=:password';
$query = $dbh->prepare($q);
$query->execute(array(':username' => $username, ':password' => $password));

if($query->rowCount() == 0){
    header('Location: index.php?err=1');
}else{
    $row = $query->fetch(PDO::FETCH_ASSOC);

    $_SESSION['sess_user_id'] = $row['id'];
    $_SESSION['sess_username'] = $row['username'];
    $_SESSION['sess_userrole'] = $row['role'];

    switch($row['role']){
        case 'Admin' : $redirectUrl = 'Dashboard.php'; break;       
        case 'Registrar' : $redirectUrl = 'Registration_Dashboard.php'; break;      
        case 'Accountant' : $redirectUrl = 'Account_Dashboard.php'; break;      
        case 'Employee' : default : $redirectUrl = 'emp_dashboard.php'; break;
    }
    header('Location: ' . $redirectUrl);
    exit();
}
?>