432 PHP i MySQL dla każdego
}
<html>
<head>
<meta http-equiv="Content-Type" content-"text/html: charset=iso-8859-2"> <title>Strona główna</title>
</head>
<body>
Jesteś załogowany jako: <?php echo $_SESSI0N['załogowany'] ?>
<br>
Pamiętaj o wylogowaniu przed opuszczeniem strony!
<br>
<br>
<table><tr>
<td>
<a href="logout.php">Wylogowanie</a>
</td>
<td>
<?php
i f(i sSett $_SESSI0N['Przywi1eje']['Admi ni strator'])){
echo("<a href-V'user_adm.php\">Zarządzanie kontami</a>"):
)
?>
</td>
</tr>
</tabłe>
</body>
</html>
Modyfikacji będzie również wymagał skrypt logout.php, pozwalający na wylogowanie użytkownika. Jego treść została zaprezentowana na listingu 16.3. Ponieważ w obecnej realizacji istnieją trzy zmienne sesji: załogowany, komunikat i przywileje, wszystkie trzy powinny być usunięte przed jej zakończeniem. Zmienne są usuwane za pomocą funkcji unset. Oczywiście dotyczy to tylko tych zmiennych, które były ustawione w trakcie trwania sesji, a zatem w każdym przypadku najpierw jest sprawdzane, czy dana zmienna istnieje. Te sprawdzenia są wykonywane za pomocą instrukcji warunkowej i f oraz funkcji i sSet.
Listing 16.3, Treść skryptu logout.php <?php
session startO:
i f(! i sSet($_SESSI0N['załogowany'])){
Skomunikat = "Nie jesteś załogowany!":
}
else{
unset($_SESSI0N['załogowany’]):
Skomunikat = "Wylogowanie prawidłowe!":
ł
i f(i sSet($_SESSI0N[1 komunikat'])) unset(S_SESSI0N['komuni kat']): i f(i sSet($_SESSION[’Przywileje'])) unset($_SESSI0N['Przywileje']): session_destroy():