php中的over是重定向
请告诉我这个php多用户重定向代码需要帮助。当你 登录可以访问数据库,但我没有将用户重定向到其 页面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
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();
}
?>