Se non chiudi il browser il cookie di sessione permane sempre lo stesso. Quando con session_start leggi il cookie, php cerca il file corrispondente all'id di sessione ricevuto.
Poiche' il file e' ancora valido a livello temporale, lo recupera. Ma se hai cancellato i valori di sessione sara' vuoto. Non sara' loggato, ma utilizza lo stesso session_id del precedente. Quello che vedi e' nella cache del browser.
se vuoi distruggere la sessione fai un file apposito utilizzato da tutti gli script...
codice:
pagina_n.php
<?php
session_start();
codice
manda alla pagina logout.php
logout.php
<?php
session_start();
$_SESSION = array();
session_destroy();
header("location: login.php");
exit;
?>
verra' recuperato lo stesso session_id, ma il file sara' vuoto. Se poi hai fatto le cose per bene lo user che sembra loggato e tenta di andare sulle pagine protette verra' invece nuovamente rinviato alla pagina login.php
codice:
<?php
session_start();
if(empty($_SESSION['check'] )
header("location: login.php");
and so on...