Foros del Web » Programando para Internet » PHP »

Logueo con distintas sessions

Estas en el tema de Logueo con distintas sessions en el foro de PHP en Foros del Web. Buenas, tengo un incoveniente en un sistema de registro de usuarios. Hay distintas clases de usuarios , algunos pueden tener rol de administrador, otros de ...
  #1 (permalink)  
Antiguo 21/04/2009, 10:01
 
Fecha de Ingreso: diciembre-2008
Mensajes: 190
Antigüedad: 15 años, 4 meses
Puntos: 6
Logueo con distintas sessions

Buenas, tengo un incoveniente en un sistema de registro de usuarios.
Hay distintas clases de usuarios , algunos pueden tener rol de administrador, otros de editores, etc.. y algunos todos a la vez...
El incoveniente me surge q cuando logueo por ej un usuario con todos los permisos creo distintas variables de session ($_SESSION['nombre'], $_SESSION['roles'], etc)
bueno la cuestion es q si NO cierro el navegador y por ej abro una nueva pestaña ingresando a la pantalla de login y me logueo esta vez con un usuario q posee un solo permiso , al ingresar me muestra todas las cosas q son solo visibles para usuarios con todos los permisos, entiendo q esto es porq mantiene la session q esta en la otra pestaña en la cual se logueo un usuario con todos los permisos.

Lo que probe fue q al intentar loguearse nuevamente, mandar un unset($_SESSION)
antes de crear las nuevas sessiones, pero esto es muy defectuoso, ciertamente a veces se loguea sin crear ninguna nueva variable..

Como puedo evitar esto?

Espero se haya entendido, saludos y gracias.
  #2 (permalink)  
Antiguo 21/04/2009, 10:13
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Logueo con distintas sessions

Hola turfeano,

Lo mejor es en el logout hacer algo así:
Código php:
Ver original
  1. $_SESSION = array();
  2. header( "Location: index.php" );

Saludos.
  #3 (permalink)  
Antiguo 21/04/2009, 11:31
 
Fecha de Ingreso: diciembre-2008
Mensajes: 190
Antigüedad: 15 años, 4 meses
Puntos: 6
Respuesta: Logueo con distintas sessions

Gracias GatorV, el tema es q el incoveniente surge antes de hacer logout... es decir al intentar volver a loguear en una pestaña nueva sin haber hecho un logout...
al final utilize q antes de generar las nuevas variables de session en un login hacer un session_unset($_SESSION) en vez de unset y funciono bien... el tema es q si tengo una session de logeo por un lado y creo otra en otro pestaña, entonces en la primera me "transformo" en el usuario de la segunda... creo q lo mejor es hacer q no se puedan loguear dos veces en una misma session de navegador... como se hace aqui,hotmail, etcf...
  #4 (permalink)  
Antiguo 21/04/2009, 13:32
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Logueo con distintas sessions

Recuerda que una "pestaña" nueva en el browser no es un proceso nuevo del browser, por lo que estos comparten las cookies y variables, es por eso que te pasa eso.

Saludos.
  #5 (permalink)  
Antiguo 21/04/2009, 15:35
 
Fecha de Ingreso: abril-2009
Ubicación: Cuba
Mensajes: 54
Antigüedad: 15 años
Puntos: 2
Respuesta: Logueo con distintas sessions

Exactamente como dice GatorV, la sesion, una vez que la creas en una pestaña, todas las nuevas pestañas de la ventana tendrán la misma sesión.

Creo que eso es una de las ventajas que tienen los browsers con pestañas entre muchas otras, imaginas, si cada vez que entraras a una pestaña nueva en la misma ventana tuvieras que loguearte nuevamente?.

Saludos.
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 06:15.