我正在尝试使用基于角色的登录身份验证。但不知何故它不能正常工作。会话变量也不会回显。我在顶部使用了session_start()。但是,我仍然面对这个问题。你能告诉我我做错了什么吗?正如你在这里看到的,我已经回应了sess_userrole。在我的数据库角色列中也存在并为用户分配角色。如果用户是管理员,则应将vm-dashboard.php else转到其他页面。但它重定向到place-order.php页面的时间。
不要将其标记为重复。我使用了以前帖子中描述的所有内容。我需要帮助。我不想要downvotes.First,检查帖子,然后将其标记为dupliacte。
代码:
<?php
require_once 'class.user.php';
session_start();
session_save_path();
$user_login = new USER();
if($user_login->is_logged_in()!="")
{
//$user_login->redirect('sm-dashboard.php');
}
if(isset($_POST['btn-login']))
{
$email = trim($_POST['userEmail']);
$miid = trim($_POST['mi_id']);
if($user_login->login($email,$miid))
{
session_regenerate_id();
$_SESSION['sess_user_id'] = $row['userID'];
$_SESSION['sess_userEmail'] = $row['userEmail'];
$_SESSION['sess_userrole'] = $row['role'];
echo $_SESSION['sess_userrole'];
session_write_close();
if( $_SESSION['sess_userrole'] == "admin"){
header('Location: vm-dashboard.php');
}else{
header('Location: place-order.php');
}
}
}
?>