Это мой код входа в систему:
<!DOCTYPE = html>
<html lang="nl">
<head>
<title>
Bioscoop
</title>
<link rel="stylesheet" href="css/style.css"/>
<?php
include('config.php');
?>
</head>
<body>
<?php
if(isset($_POST["login"]))
{
if(empty($_POST["username"]) || empty($_POST["password"]))
{
$message = '<label>Vul alle velden in</label>';
}
else
{
$query = "SELECT * FROM admins WHERE username = :username AND password = :password";
$statement = $con->prepare($query);
$statement->execute(
array(
'username' => htmlspecialchars($_POST["username"]),
'password' => htmlspecialchars($_POST["password"])
)
);
$count = $statement->rowCount();
if($count > 0)
{
$_SESSION["username"] = $_POST["username"];
$username = $_SESSION["username"];
$query = "SELECT rol FROM admins WHERE username = :username";
$stm = $con->prepare($query);
$stm->bindParam(':username', $username, PDO::PARAM_STR, 20);
$stm->execute();
$result = $stm->fetchAll(PDO::FETCH_OBJ);
foreach ($result as $pers) {
$rol = $pers->rol;
$_SESSION["rol"] = $rol;
if($_SESSION["rol"] == 'admin') {
header("location:logged.php");
} else {
header("location:login.php");
}
}
}
else
{
$message = '<label>Verkeerde Gegevens</label>';
}
}
}
?>
<header class = "head">
<img id = "hoofdlogo" src = "img/cinema.png" alt="Logo cinema">
<p id="copyright">©JopRill</p>
</header>
<nav>
<ul>
<li><p><a href="index.php"> Home </a></p></li>
<li><p><a href="films.php"> Films </a></p></li>
<li><p><a href="#"> Login </a></p></li>
</ul>
</nav>
<form method="post">
<div class="form" >
<div id="num1"><h2>Login</h2></div>
<label><p>Gebruikersnaam</p></label>
<input type="text" name="username" id="ContactName" value=""/>
<label><p>Wachtwoord</p></label>
<input type="password" name="password" id="ContactEmail" value="" />
<p></p>
<input type="submit" name="login" id="submit" value="Login" />
<?php
if(isset($message))
{
echo '<label class="text-danger">'.$message.'</label>';
}
?>
</div>
</form>
</body>
</html>
и это мой код страницы входа в систему:
<?php
session_start();
?>
<!DOCTYPE = html>
<html lang="nl">
<head>
<title>
Bioscoop
</title>
<link rel="stylesheet" href="css/style.css"/>
</head>
<body>
<?php
include('config.php');
?>
<header class = "head">
<img id = "hoofdlogo" src = "img/cinema.png" alt="Logo cinema">
<p id="copyright">©JopRill</p>
</header>
<nav>
<ul>
<li><p><a href="logout.php"> Logout </a></p></li>
</ul>
</nav>
<?php echo $_SESSION["rol"]; ?>
</body>
</html>
В коде страницы входа я сохраняю "rol" всеанс.Кажется, это работает, потому что когда я нажимаю на кнопку входа в систему, меня перенаправляют на страницу logged.php, но когда я пытаюсь отобразить ту же переменную сеанса, которую я использовал для входа в систему, он говорит, что она не определена.В чем причина этого?