Справочники, инструменты, документация

PHP: Простейшая авторизация одним файлом

Рассмотрим скрипт с авторизацией пользователя, построенного на одном файле. Используется механизм сессии, для которого в браузере должен быть включён механизм приёма cookie.
session_start(); //вызывается до вывода любого контента

 function check_user () { //проверка авторизации пользователя
 if (!isset($_SESSION['my_inside'])) return false;
 else return $_SESSION['current_user'];
 }

 function form() { //вывод формы для авторизации
 echo '<form method="post">Логин: <input type="text" size="33" maxlength="32" name="login">
  Пароль: <input type="password" size="33" maxlength="32" name="pass">
  <input type=submit value="OK"></form>';
 }

 if (isset($_GET['off'])) { //сделан запрос на выход из сессии? 
 if (check_user()) $_SESSION = array();
 }
 if (!check_user()) { //если не авторизован
 if (!isset($_POST['login']) or !isset($_POST['pass'])) { echo '<p>Авторизуйтесь</p>'; form(); exit; }
 //если переданы логин и пароль из формы:
 $login = trim(htmlspecialchars($_POST['login'])); 
  //в реальности нужно получить $login и $pass по безопасному протоколу HTTPS
 $pass = md5(trim(htmlspecialchars($_POST['pass']))); 
  //пароль нужно зашифровать для сравнения с зашифрованным паролем из БД
 $login0 = 'Admin'; $pass0=md5('123'); //в реальности - получить из БД зашифрованный пароль для $login
 if ($login==$login0 and $pass==$pass0) { //вошли в систему
  $_SESSION['my_inside']=1; //"секретная переменная" в сессии, поменяйте ей имя
  $_SESSION['current_user']=$login; //логин в сессии, чтобы различать пользователей между собой
 }
 else { //не вошли, вывести сообщение и форму
  echo '<p>Неверный логин или пароль!</p>'; form(); exit;
 }
 }
 //Код для авторизованного пользователя:
 echo '<p>Вы авторизованы; <a href="auto2.php?off">выйти</a></p>';