Actualiser include/session_check.php

This commit is contained in:
2026-05-22 11:46:27 +00:00
parent 2f8eb3e447
commit 414116daa9

View File

@@ -1,11 +1,28 @@
<?php <?php
$timeout = 900; // 15 minutes en secondes $timeout = 900; // 15 minutes
$usersFile = __DIR__ . '/../users.json';
$users = file_exists($usersFile) ? json_decode(file_get_contents($usersFile), true) : [];
// Vérifier si connecté
if (!isset($_SESSION['user'])) { if (!isset($_SESSION['user'])) {
header("Location: login.php"); header("Location: login.php");
exit(); exit();
} }
// Vérifier si l'utilisateur existe toujours dans users.json
if (!isset($users[$_SESSION['user']])) {
session_destroy();
header("Location: login.php?timeout=1");
exit();
}
// Vérifier si le rôle en session correspond toujours au rôle dans users.json
if ($_SESSION['role'] !== $users[$_SESSION['user']]['role']) {
$_SESSION['role'] = $users[$_SESSION['user']]['role'];
}
// Vérifier l'inactivité
if (isset($_SESSION['last_activity'])) { if (isset($_SESSION['last_activity'])) {
$inactif = time() - $_SESSION['last_activity']; $inactif = time() - $_SESSION['last_activity'];
if ($inactif > $timeout) { if ($inactif > $timeout) {