certo che lo apro... In asp avevo creato un record in cui avevo scritto base o medio o avanzato e poi nella pagina da proteggere scrivevo:
<%
utente = session("utente")
accesso = session("accesso")
If IsNull(utente) OR utente = "" or accesso <> "OUNIUH07" Then
Response.Redirect("errore.asp")
End if
nomesess=session("nomesess")
%>
funzionava alla perfezione... In php non riesco, il tuo codice l'ho usato te lo posto sotto controlla ancora tu se è giusto o se ho sbagliato qualcosa...
<?php
session_start();
$path = $_SERVER['PHP_SELF'];
$pagina = basename($path);
if ($pagina != $_SESSION['pagina']){
header('location: pagina_di_errore.php');
exit;
}
?>