dico che hai ragione.

cmq non funziona, cioè dopo l'autenticazione il redirect del file di controllo login.php mi apre comunque le pagine che non sono incluse nel corpo ( come main.php )

:master:

il codice corretto:

Codice PHP:
nclude("header.php");
include(
"menu.php");

$p="main"
switch (
$p) {

case 
"login":
include (
"auth/login.php");
header("Location: admin.php");
break;

default: 
//(oppure main)


if(isset($_GET['page'])){
$p=$_GET['page'];
if(
$p!=basename($p) || !preg_match("/^[A-Za-z0-9\-_]+$/",$p) || $p=="index" || !file_exists($p.".php"))
$p="error";
}

}

include(
$p.".php");
include(
"footer.php");