Foros del Web » Programando para Internet » PHP »

multi-sesiones

Estas en el tema de multi-sesiones en el foro de PHP en Foros del Web. saludos: Nesecito saber como tener varias sesiones al mismo tiempo. ya que por ejemplo si en pag1.php guardo variables session_start(); $_SESSION['usuario']="$user"; y en pag2.php la ...
  #1 (permalink)  
Antiguo 10/02/2004, 15:36
 
Fecha de Ingreso: agosto-2003
Ubicación: Viña del mar
Mensajes: 280
Antigüedad: 20 años, 8 meses
Puntos: 0
multi-sesiones

saludos:

Nesecito saber como tener varias sesiones al mismo tiempo. ya que por ejemplo si en

pag1.php

guardo variables

session_start();
$_SESSION['usuario']="$user";

y en pag2.php

la leo

session_start();
$ttt=$_SESSION['usuario'];
echo $ttt;


me lo muestra bien, pero si a la ves abro otra ventana y me autentifico con otro user, la sesion del primer usuario que ingresó, pasa inmediatamente a formar parte de la sesion del ultimo usuario q se autentifico

por ejemplo:

si el usuario A se autentifica, en pag2.php

va a mostrar felipe.

y el ultimo usuario que entra a navegar a ese sitio se autentifica y en pag2.php

muestra leo, automaticamente la sesion de felipe se transforma en la de leo, es decir que solo esta manejando php una sesion, como ago para manejar multiples sesiones

gracias...
  #2 (permalink)  
Antiguo 10/02/2004, 15:46
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. eso sólo te va a suceder en un mismo PC (cliente) .. y te sucede por qué sigues usando el mismo SID que se originó en el primer inicio de sesión.

Para solventar ese problema .. en tu lógica de autentificación debes crear un nuevo ID de sesión siempre para que otras sesiones abiertas continuen con sus ID (SID) creados.

Desde PHP 4.3.2 tienes la función:
session_regenerate_id()
http://www.php.net/manual/en/functio...enerate-id.php

Y si usas versiones anteriores o requires de compatibilida entre versiones de PHP que pueda usar el servidor .. si te fijas ahí en los comentarios de los usuarios de esa función en el link que dejé veras várias alternativas para generar un nuevo ID e iniciar la sesion con ese ID (session_start("ID_tuyo_generado")) ...

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 10/02/2004, 18:22
 
Fecha de Ingreso: agosto-2003
Ubicación: Viña del mar
Mensajes: 280
Antigüedad: 20 años, 8 meses
Puntos: 0
saludos:

con la version 4.3.2 es entendible el mecanismo, pero la verdad no entiendo como lo puedo hacer con versiones anteriores, por ejemplo la version 4.3.1,
porque antes de que saliera la version 4.3.2 ya existian muchos sitios con multisesiones, por ejemplo hotmail aunque esta hecha con cgi,pero como lo ago con versiones como la 4.3.1 la cual tengo yo o versiones anteriores?

gracias
  #4 (permalink)  
Antiguo 10/02/2004, 19:03
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Te comenté que leyeses los comentarios de los usuarios de esa función .. ofrecen alternativas para otras versiones de PHP.

El caso es que si lees la teoría de la función de inicio de seiones:
session_start() veras que si bien "normalmente" se llama así (sin parámetro) .. se le puede pasar como parámetro el ID de sesión que quieres que tome esa sesión ..

session_regenerate_id() lo único que hace es generar un ID aleatorio (como identificador de sesión) y ejecuta session_start() (más o menos sería esto lo que hace ...)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 12:17.