Foros del Web » Programando para Internet » PHP »

Consultar session usuario

Estas en el tema de Consultar session usuario en el foro de PHP en Foros del Web. Buenas tardes! Tengo una pagina validacion.php, que me valida un usuario entrado en un formularo index.html...y si el usuario y contraseña son válidos me inicia ...
  #1 (permalink)  
Antiguo 18/01/2009, 07:53
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 9 meses
Puntos: 0
Consultar session usuario (solucionado)

Buenas tardes!

Tengo una pagina validacion.php, que me valida un usuario entrado en un formularo index.html...y si el usuario y contraseña son válidos me inicia session (session_start();)

Como puedo consultar desde una tercera página topsecret.php, si la sesión está iniciada correctamente mostrar el texto topsecret, y si no está iniciada (o se entra a la página topsecret.php sin haber pasado por la validación), que muestre un texto de error?

MUCHAS GRACIAS!

PD: en la segunda página, solo me dice "usuario validado" si se valida correctamente y luego inicia session...cómo puedo hacer para que vaya automaticamente a la página 3 (topsecret.php) sin ningun formulario ni botón submit?

Última edición por bERTUZ; 19/01/2009 a las 14:11
  #2 (permalink)  
Antiguo 18/01/2009, 08:39
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 16 años, 3 meses
Puntos: 32
Respuesta: Consultar session usuario

Puedes comprobar que la session este iniciada con

if(session_is_registered("login")
{
header("location:index.php"); // Lo redireccionas si la session existe

}

else
{

}
  #3 (permalink)  
Antiguo 18/01/2009, 11:01
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Consultar session usuario

Ya no se usa session_is_registered(). Es mejor usar isset($_SESSION['variable']).

  #4 (permalink)  
Antiguo 18/01/2009, 11:29
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Consultar session usuario

Muchas gracias acoevil y okram por vuestras respuestas!

así que quedaría:

Código PHP:
if(isset($_SESSION['variable'])) //que variable de sessión tengo que poner?? porque solo he hecho session_start();
{
      
header("location:index.php"); //redirecciona a index.php, en cuantos segundos??
}

else
{


SALUDOS!
  #5 (permalink)  
Antiguo 18/01/2009, 13:27
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Consultar session usuario

1 - Que variable de sessión tengo que poner?? porque solo he hecho session_start();

2 - Como funciona el redirecciona a index.php, espera unos segundos a hacerlo o es automático??
  #6 (permalink)  
Antiguo 18/01/2009, 13:40
 
Fecha de Ingreso: mayo-2007
Mensajes: 348
Antigüedad: 17 años, 5 meses
Puntos: 9
Respuesta: Consultar session usuario

1.- A que te refieres?

Si te logeas bién, puedes asignar el nombre que introduces en una sesión. Si no se asigna ese nombre es por que has fallado en el logeo por ejemplo.
2.- Automatico, sin esperas.

__________________
Debian Squeeze rules!
  #7 (permalink)  
Antiguo 18/01/2009, 16:40
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Consultar session usuario

1 - me refiero a que en la solución hay --> $_SESSION['variable'] (esa variable 'variable' de sesión se ha tenido que crear para algo)...tengo que crear una variable de sesión obligatoriamente para poder ver si se ha iniciado sesion correctamente??

gracias por las respuestas!! :)

alguien tiene alguna 'solucion'??

SALUDOS!
  #8 (permalink)  
Antiguo 18/01/2009, 16:42
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Consultar session usuario

Las sesiones son una de las únicas maneras de propagar datos entre distintas páginas de un mismo sitio. Es necesario que las uses pues tu script tiene que recordar de alguna menara que tu usuario se logueó.

  #9 (permalink)  
Antiguo 18/01/2009, 17:58
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Consultar session usuario

muchas gracias Nathan_1979 y okram por vuestras respuestas!

ya he creado la variable de session satisfactoriamente! :)

hay un problema pero, ahora...al acabar la validacion redirecciono siempre (se haya validado correctamente el usuario o no) a la pagina "topSecret.php" con el --> header("location: topSecret.php"); ... si el usuario no se ha validado, me va correctamente a la página topSecret, pero si el usuario se ha validado, me muestra el mensaje de usuario validado, pero no redirecciona! da el siguiente error: Warning: Cannot modify header information - headers already sent by!

alguna solucion??

MUCHISIMAS GRACIAS! saludos!
  #10 (permalink)  
Antiguo 18/01/2009, 18:27
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Consultar session usuario

Solucionado, el problema era que hacia un echo antes de hacer la redirección!

La página "topSecret.php", no me mira bien si la sessión se inició correctamente desde la pagina anterior antes de redireccionar (si se creó la variable de sessión)...y lo he hecho como estaba escrito anteriormente en este post! :S
Código PHP:
<?php

    
if(isset($_SESSION['usuariSessio']))
    {
        echo 
"Top Secret!";       
        echo 
"Usuari '" .$_SESSION['usuariSessio']. "' Validat!";
    }
    else
    {
        echo 
"ERROR";
    }
    
?>
...cual puede ser el problema? por lo que veo no me coje la variable de sesión que cree en la página anterior justo después de validar el usuario y iniciar la sesión! :S ...si inicias sesión y creas una variable de sesión en una página y luego redireccionas a otra...te tendría que cojer la variable de sesión o no?

Última edición por bERTUZ; 18/01/2009 a las 18:43
  #11 (permalink)  
Antiguo 18/01/2009, 20:02
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Consultar session usuario

Si, pero debes colocar session_start() al comienzo. Debes iniciar la sesión con session_start() en cada página que vaya a usar los datos de sesión que tienes guardados o que quieras crear unos nuevos.

  #12 (permalink)  
Antiguo 19/01/2009, 12:53
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Consultar session usuario

TEMA SOLUCIONADO! :)

...sólo faltaba cerrar sesión (session_destroy();) y eliminar las variables de sesión, y ha funcionado todo correctamente!

muchisimas gracias por toda la ayuda recibida, y por todos los nuevos conocimientos adquiridos!
SALUDOS!

Última edición por bERTUZ; 19/01/2009 a las 14:10
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:41.