Мне нравится обращаться к управлению сессиями php следующим образом: после проверки пользователя я установлю переменную сеанса.например:
$permitted_chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$_SESSION['loggedIn']=generate_string($permitted_chars, 20);
, затем в верхней части каждой страницы я хочу, чтобы мой контроль сеанса был:
<?php
session_start();
if (empty($_SESSION['loggedIn'])){
header("Location: login.php");
exit();
}
edit: Кроме того, если вы загружаете внешние страницы, например, dbconnect.php-страницу, вы бы поместили только:
<?php
if (empty($_SESSION['loggedIn'])){
header("Location: login.php");
exit();
}
вверху в этих файлах ....
, если я действительно стану надежным, то я сохраню сгенерированный код "вошел в систему"в таблице базы данных при входе в систему загрузите пару идентификаторов (например, имя пользователя и пароль) в переменные сеанса. Затем после первоначальной проверки я проверю, является ли сеанс действительным, например
" select count users from user_tbl where `name`=`".$_SESSION['name']."` and `pass`=`".$_SESSION['pass']."` and `key`=`".$_SESSION['loggedIn']."`"
затем
if ($count=="0"){
header("Location: login.php");
exit();
}