Foros del Web » Programando para Internet » PHP »

Manejar multiples sesiones en el mismo navegador

Estas en el tema de Manejar multiples sesiones en el mismo navegador en el foro de PHP en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 26/11/2012, 15:58
 
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.
  #2 (permalink)  
Antiguo 26/11/2012, 16:46
 
Fecha de Ingreso: agosto-2008
Ubicación: Canarias, España - París, Francia
Mensajes: 105
Antigüedad: 15 años, 8 meses
Puntos: 3
Respuesta: Manejar multiples sesiones en el mismo navegador

Ponle nombre al session_start(una_sesion); y también session_name(una_sesion);

Etiquetas: bd, sesiones
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 07:45.