Foros del Web » Programando para Internet » PHP »

problemas con sesiones

Estas en el tema de problemas con sesiones en el foro de PHP en Foros del Web. Hola Tengo un problema con las sesiones, y es este: Guardo un numero en una sesion para que me sirve cuando finalize el usuario el ...
  #1 (permalink)  
Antiguo 26/10/2003, 00:24
Avatar de fjescalant  
Fecha de Ingreso: abril-2002
Ubicación: Villahermosa
Mensajes: 54
Antigüedad: 22 años
Puntos: 0
problemas con sesiones

Hola

Tengo un problema con las sesiones, y es este:

Guardo un numero en una sesion para que me sirve cuando finalize el usuario el uso del sistema, ya que saco ese numero de la sesion y se modifica la base de datos y despues elimino la sesion.

Pero tengo este problema, si cierro el browser y lo ejecuto de nuevo, al querer eliminar la sesion el session_id ha cambiado y no se borra ni saca el numero que almacene ahi ya que el session_start hace referencia a otro id.

Ojala me haya explicado.

Ayudenme por favor
  #2 (permalink)  
Antiguo 26/10/2003, 00:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
En principio así es la filosofía de uso de las sesiones .. Si cierras el navegador .. muere la sesión.

Una sesión se entiende como tal a una série de acciones que se realizan entre una "apertura" de una página y un cierre .. pasando entre la 1ª página que inicia la sesión y hasta que se cierre el navegador (o expiere la sesión) por X páginas donde venga propagado un SID (Identificador Único de sesión) válido, tomandose el mismo SID si llega propagado y si no es propagado, session_start() genera uno nuevo ..

Ese tiempo lo define la directiva (php.ini) session.gc_maxlifetime en conjunto con: session.cookie_lifetime (si se usa propagación del SID en cookies: session.use_cookies )

¿Por qué quieres recuperar ese valor si cierran el navegador? .. Si quieres hacer eso .. para esos casos se usan más bien cookies no sesiones, aunque modificando los valores de las directiva que mencioné podrías conseguir lo que pretendes.

Pero, no sería nada seguro (sobre todo si el SID lo propagas por el URL) .. un "descuido" y mandas un link a otro sítio (fuera de tu domino) . si usan ese link en el intervalo de tiempo que no expirase la sesión .. podría ocasionarte problemas de seguridad (entrarian desde otros sitios con esa sesión activa) ..
Aunque .. en versiones de PHP 4.3.0 en adelante si mal no recuerdo ese problema se ha solventado checkeando automáticamente por parte de PHP el "host" que creó la sesión y el host que lo llama a ejecutarse . si no es el mismo .. no valida el SID en curso.

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 15:20.