Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/09/2005, 04:26
Avatar de McClane
McClane
 
Fecha de Ingreso: diciembre-2002
Mensajes: 14
Antigüedad: 21 años, 3 meses
Puntos: 0
problema cookies login

Buenas !!

Tengo un pequeño script que me he currado para hacer acceder a una página restringida mediante password. Para ello utilizo cookies.

Envio los datos del formulario a la página que quiero acceder, ahí comprueba si coinciden el usuario y contraseña con los de la base de datos, y en caso afirmativo crea una cookie:

Código PHP:
if (auth($un,$pw)) {

        
setcookie("loggedin"$untime()+3600"/"); 

    } 
Hasta aquí bien ya que me devuelve true y por consiguiente crea la cookie.

Bien, el problema reside en la página a la que accedo. En ella incluyo el script de login mediante un require, y acto seguido llamo a la función require_login(); que se encarga de comprobar si existe la cookie "loggedin":

Código PHP:
function require_login() {

    if (
loggedin()) {

        return;

    }

    else {

        echo 
"<meta http-equiv=\"refresh\" content=\"1; ".URL_ROOT."index.php\">";
        die;

    }


loggedin() es un simple:

Código PHP:
if (isset($_COOKIE[loggedin])) {

        return 
true;
        }
    else {

        return 
false;
        } 
Lo que ocurre es que la primera vez (sólo la primera) que accedo a la página restringida, ésta me redirige a index.php, por lo que según parece no ve que la cookie ha sido creada.
Si después accedo a la página restringida poniendo la dirección, no me da ningún problema, no redirige y accede como debiera de hacer desde la primera vez.

Sospecho que será alguna cuestión de orden, que la página tendrá que cargarse de nuevo para leer la cookie o algo así, pero no caigo en una posible solución.

Muchas gracias de antemano.

Saludos.