<input type="hidden" name="loginCorrecto" value="1">
NUNCA! hagas cosas como esa .. Imagina que yo te uso ese formulario desde mis servidores (o navegador en sí sólo) y suplanto el valor de esa variable o la replico ..
Ya usas variables de sesión .. usalas para TODO!...
También se observan algunos problemas en el uso de las variables de sesión:
session_unregister('usuarioLogeado');
Eso NO debes usarlo .. si usas $_SESSION (
www.php.net/session) ..
Tampoco se vé que uses session_start() (falta todo el código en su contexto!).
La validación que haces no es correcta:
if($loginCorrecto)
deberías basarlo en la existencia de tu variable de sesión que -defines- cuando pasa la autentificación contra tu BBDD por médio de esa consulta SQL que comparas tu usuario/contraseña que exista.
Podría ser:
Código PHP:
<?
session_start(); // acuerdate de usarlo!!!!
if (isset($_SESSION['usuarioLogeado'))){
// pasó tu validación contra tu BBDD
} else {
// autentificas a tu usuario por tus variables del formulario ...
}
Más o menos esta filosofía la puedes ver completa y funcionando en este script:
Autentificator
http://php.cluster-web.com/autentificator
Un saludo,