如果以用户身份登录,可以转到管理页面
Can go to admin page if logged in as user
我在一个网站上工作,我想要有 2 个页面。我有登录页面,一个 welcomeadmin.php 和一个 welcomeuser.php
如果我使用管理员登录,我会被重定向到管理页面,如果我以用户身份登录,我会被重定向到用户页面,这很好。
问题是当我以用户登录并被重定向到用户页面时,我还可以访问welcomeadmin.php 通过在我的 URL.
中更改它
login.php:
session_start();
// Check if the user is already logged in, if yes then redirect him to
welcome page
if(isset($_SESSION["loggedin"]) && $_SESSION["loggedin"] === true){
if($_SESSION['functie'] == 'admin'){
header("location: welcomeadmin.php");
}
else{
header("location: welcomeuser.php");
}
exit;
}
welcomeadmin.php
if(!isset($_SESSION["loggedin"]) || $_SESSION["loggedin"] !== true){\
header("location: login.php");
exit;
}
欢迎用户
<?php
// Initialize the session
session_start();
// Check if the user is logged in, if not then redirect him to login page
if(!isset($_SESSION["loggedin"]) || $_SESSION["loggedin"] !== true){
header("location: login.php");
exit;
}
?>
在您的 welcomeadmin.php
文件中,您没有检查尝试访问该页面的用户是否确实是管理员。在检查用户是否登录后,您可以使用简单的 if 语句在 login.php
文件中添加检查。只需在 welcomeadmin.php
文件中的第一个 If 之后添加此代码段。
if (!isset($_SESSION["functie"]) || $_SESSION["functie"] != "admin") {
header("location: welcomeuser.php");
exit;
}
我在一个网站上工作,我想要有 2 个页面。我有登录页面,一个 welcomeadmin.php 和一个 welcomeuser.php
如果我使用管理员登录,我会被重定向到管理页面,如果我以用户身份登录,我会被重定向到用户页面,这很好。
问题是当我以用户登录并被重定向到用户页面时,我还可以访问welcomeadmin.php 通过在我的 URL.
中更改它login.php:
session_start();
// Check if the user is already logged in, if yes then redirect him to
welcome page
if(isset($_SESSION["loggedin"]) && $_SESSION["loggedin"] === true){
if($_SESSION['functie'] == 'admin'){
header("location: welcomeadmin.php");
}
else{
header("location: welcomeuser.php");
}
exit;
}
welcomeadmin.php
if(!isset($_SESSION["loggedin"]) || $_SESSION["loggedin"] !== true){\
header("location: login.php");
exit;
}
欢迎用户
<?php
// Initialize the session
session_start();
// Check if the user is logged in, if not then redirect him to login page
if(!isset($_SESSION["loggedin"]) || $_SESSION["loggedin"] !== true){
header("location: login.php");
exit;
}
?>
在您的 welcomeadmin.php
文件中,您没有检查尝试访问该页面的用户是否确实是管理员。在检查用户是否登录后,您可以使用简单的 if 语句在 login.php
文件中添加检查。只需在 welcomeadmin.php
文件中的第一个 If 之后添加此代码段。
if (!isset($_SESSION["functie"]) || $_SESSION["functie"] != "admin") {
header("location: welcomeuser.php");
exit;
}