E' vero nel controllo ci va && e non ||

if ($_SESSION["tipo"] != "admin" && $_SESSION["tipo"] != "dirigente") {
// messaggio di mancanza permessi
}
[/PHP]