Można zrobić to tak:
- plik index.php z formularzem logowania
- plik login.php w którym następuje autoryzacja i przekierowanie do strony po zalogowaniu - main.php
- plik wyloguj.php w którym sesja jest niszczona
W stronie z formularzem pobierany jest login i hasło i przekazywane postem do pliku login.php i w nim przetwarzane.
<?php
if(!isset($_POST[\"login\"]) || !isset($_POST[\"haslo\"])){ header(\"Location:index.php\"); }else{
//tu np. operacje z bazą danych weryfikujące czy user moze sie zalogowac
$_SESSION[\"login\"] = $_POST[\"login\"];
$_SESSION[\"haslo\"] = md5($_POST[\"password\"]);
header(\"Location:main.php?\".SID); }
?>
W main.php sprawdzane są zmienne sesyjne, jeśli istnieją to ok, a jeśli nie to user zostaje przekierowany na index.php.
<?php
if(!isset($_SESSION[\"login\"])||!isset($_SESSION[\"haslo\"])){ header(\"Location:index.php\"); }
?>
Plik wyloguj.php (również zabezpieczony przed wywołaniem go przez niezalogowanego usera
<?php
if(!isset($_SESSION[\"login\"])||!isset($_SESSION[\"haslo\"])){ header(\"Location:index.php\"); }
//tu jakaś treść
unset($_SESSION[\"login\"]); unset($_SESSION[\"haslo\"]); echo 'Zaloguj sie ponownie <a href=\"index.php\">zaloguj</a>';
?>