como lo tienes puesto si un user entra sin estar registrado saltara un error que no esta definida la variable $_SESSION['user'] mostrando informacion sensible si no esta bien configurado, lo recomendable es usar empty , isset tambien puede valer pero solo determina si la variable existe y no distingue el valor , pero empty si distingue lo primero si no es empty (null,false,var sin declarar , etc.. )entonces si continuamos en el if y si es empty entramos en el else pero no muestra ningun error en caso de no estar definida la variable $_SESSION['user']
http://es1.php.net/manual/es/function.empty.php
Código PHP:
Ver original
if(!empty($_SESSION['user'])) // o incluso (isset($_SESSION['user']) and !empty($_SESSION['user'])) {
// contenido para logueados
}
else
{
// controlamos el error
exit(htmlentities('No está Registrado. ¿Desea volver a la página principal?, <a href="index.php">volver</a>'));
}