Yo lo haría así (te lo resumo esquemáticamente)
Esto sería el index
Código PHP:
<?php
if (isset $_POST["ctrl"])
{
//Compruebo que el usuario se autentifica
if (isset ($error)) //Si hay error
header ("Location: index.php?error=" . $error);
else //Si todo va bien
header ("Location: aplicacion.php"); //Si no lo hay, nos vamos a la página que requiere autentificación
}
?>
<html>
<head>
</head>
<body>
<form action="index.php" method="post">
<input type="hidden" name="ctrl" value="ctrl">
<!-- Demás campos -->
<submit />
</form>
</body>
</html>
Después, en las páginas que requieran autentificación, sólo necesitas incluir un pequeño include (seguridad.php o algo así) con las líneas que ya te comenté
Y esto debería ir (te recomiendo que en un include) en las páginas privadas
Código PHP:
session_start ();
if (!isset ($_SESSION["autentificado"]) || is_null($_SESSION["autentificado"]) || $_SESSION["autentificado"] != "SI")
header("Location: index.php?error=No estas logueado");