Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/11/2012, 15:58
gonzasilve
 
Fecha de Ingreso: junio-2008
Mensajes: 4
Antigüedad: 15 años, 10 meses
Puntos: 0
Pregunta Manejar multiples sesiones en el mismo navegador

Hola que tal, buenas tardes a todos. Mi duda es la siguiente, espero me puedan ayudar:

Estoy adentrándome en el tema de las sesiones y hay una cosa que no me queda muy clara. Cabe mencionar que ya se iniciar una sesion, registrar variables de sesion, cerrar una sesion, etc. Asi que no escatimen en los terminos, (sin alardear claro)...

Veo que session_start() evita que hayan sesiones simultáneamente abiertas, ya que si encuentra una sesión abierta continua la sesion, es decir la hace disponible, por el contrario sino hay una sesion abierta, crea una nueva.

Pero por la naturaleza de mi web, necesito precisamente que se pueda soportar más de una sesión abierta en el mismo navegador. Un ejemplo:


Un usuario A tiene iniciada su sesion en el navegador y llega un usuario B y le pide porfa que le preste su compu, este accede y entonces el usuario B otra ficha inicia su sesión (ya que la compu se la presto el primero).
Cuando el usuario B termina sus actividades no cierra su sesión y el usuario A volvía a retomar su sesión (cambiaba a su ficha) y entonces le aparecen los datos del Usuario B. Ho incluso si el usuario B cierra la sesion desaparecen los datos del usuario A.

quisiera que sin importar si el usuario B abre o cierra una sesion afecte al usuario A. Veo que esto ocurre ya que uso los mismos nombres de variables para iniciar todas las sesiones.
Código PHP:
//...el usuario ya paso la validacion y se cargaron sus datos en variables.
//..iniciamos una sesion
            
session_start();
            
$_SESSION['id_usuario'] = $id_SysUsuario;
            
$_SESSION['permisos']    = $lstPermisos;
            
$_SESSION['username']       = $username;
            
$_SESSION['NOMBRECOMPLETO']              = $nombreUsuario;
            
$_SESSION['validado']       = 'TRUE';
            
$_SESSION['validado']       = 'TRUE';
            
$_SESSION['usrKey'.$id_SysUsuario] = md5($id_usuario); 
Sé que si se inicia sesion en diferente maquina se abre una nueva sesion ó si se inicia sesion en diferente maquina tambien.

Como ves, lo que quisiera saber si hay forma de hacer con PHP lo que hacen los chicos de Gmail que te permiten tener varias sesiones abiertas al mismo tiempo en el mismo navegador.

Ya me dijeron que los puedo solucionar asociando una clave al iniciar la sesion de cada usuario; por ejemplo encriptando en md5 el id del usuario que inicia sesion. Pero siempre uso el mismo nombre variable para guardar la clave y entonces siempre hay un dato comun que sobrescribe al anterior.


La verdad ya me perdi con esto, alguien sabria como hacerlo?
De antemano gracias x leer mi duda.