Bueno no se si conoces las variables de session??
 
Estas variables son unos valores temporales que puedes usar mientras el usuario permanesca en la pagina. 
Ahora te explico un concepto:
1- Si ya sabemos que existen un tipo de variables que mientras un usuario este en el sitio permanecen con vida este tipo de variable puedo usarla para saber si esta loguiado o no, como hacerlo.
Las variables de session debes inicializarlas para darle vida a ellas, una vez inicies una variable y le des valor estara viva en todo el sitio y cuando la necesites la llames, entonces con estas variables la gente detecta los accesos de los usuarios.
2- Como darle valor?? y donde?? simple, cuando el usuario se logue en la pagina y es correcto el usuario y password entonces se crea una variable de session que determina que este usuario ya se loguio y si no esta loguiado entonces eso significa que esta variable no estara creada.
3- AHH ok entonces si la variable existe es porque se loguio y si no existe es porque no lo a hecho. 
Si no sabes como iniciar una variable session dependiendo a la version de tu php puedes usar la variable superglobal $_SESSION ahora la forma de hacerlo es: 
 Código PHP:
    <?php
session_start(); # esta arranca el poder usar sessiones
$_SESSION["login"] = "autentificado";
?>    
  Asi de facil se activa una variable y se le asigna valor a la variable de session $_SESSION["login"] ahora solo queda colocar en cada archivo donde necesitemos asegurarnos que los usuarios estas loguiados un condicional que detectara eso: 
 Código PHP:
    <?php
session_start();
if(!isset($_SESSION["login"]) || empty($_SESSION["login"])){
 echo "ERROR: Esta pagina necesita autentificacion.";
 exit;
}
?>    
  Ese codigo escribe que para ver la pagian debe estar autentificado si no lo estan y no muestra la pagina donde quieres entrar, pero en tu caso en vez de poner echo redirecciona a otra pagina que sera la de acceso que solicita user y password. 
Espero haberme explicado y tu allas entendido el concepto.