Foros del Web » Programando para Internet » PHP »

Saber cuando a cerrado Session en php

Estas en el tema de Saber cuando a cerrado Session en php en el foro de PHP en Foros del Web. Alguien sabe cómo se puede saber, cuando sale o cierra sesión un usuario en php. Lo que necesito saber es lo siguiente: Tengo un chat ...
  #1 (permalink)  
Antiguo 13/05/2009, 18:22
(Desactivado)
 
Fecha de Ingreso: enero-2008
Mensajes: 272
Antigüedad: 16 años, 3 meses
Puntos: 1
Saber cuando a cerrado Session en php

Alguien sabe cómo se puede saber, cuando sale o cierra sesión un usuario en php.
Lo que necesito saber es lo siguiente:
Tengo un chat en ajax con php y mysql.
Tengo una tabla de usuarios, donde se registran los usuarios antes entrar a la sala de chat.
Una vez registrado, inician sesión para entra a la sala de chat, en ese momento en la tabla de usuario, en el campo sesion_iniciado actualizo a valor 1.
Y hago una consulta a todos los usuarios que tengan el campo sesion_iniciado el valor =1.
Para que aparezcan en el listado de la sala de chat.
Ahora quiero saber cómo puedo saber si un usuario a cerrado sesión para cambiar el valor= 0 en el campo sesion_iniciado, porque inicialmente tenía valor =0.
Para así ya no aparezca en la lista de usuario en la sala de chat

Por favor ayúdenme gracias
  #2 (permalink)  
Antiguo 13/05/2009, 18:26
 
Fecha de Ingreso: diciembre-2008
Mensajes: 101
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Saber cuando a cerrado Session en php

xq no pones un boton q diga cerrar sesion y que cuando lo presionan actualize en la base de datos y le ponga valor 0?
  #3 (permalink)  
Antiguo 13/05/2009, 18:32
(Desactivado)
 
Fecha de Ingreso: enero-2008
Mensajes: 272
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Saber cuando a cerrado Session en php

Cita:
Iniciado por echi_la22 Ver Mensaje
xq no pones un boton q diga cerrar sesion y que cuando lo presionan actualize en la base de datos y le ponga valor 0?
Gracias por responder.

Seria excelente, pero que pasaria si no lo hace click en el botón cerrar session, generalmente no hacen click los usuarios, simplemente lo cierran el navegador

gracias
  #4 (permalink)  
Antiguo 13/05/2009, 18:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Saber cuando a cerrado Session en php

En ese caso haz un cronjob o tarea recurrente que se ejecute cada 10 minutos por ejemplo que compruebe si un usuario esta o no inactivo y cambie el campo de 1 a 0.

Saludos.
  #5 (permalink)  
Antiguo 13/05/2009, 19:09
(Desactivado)
 
Fecha de Ingreso: enero-2008
Mensajes: 272
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Saber cuando a cerrado Session en php

Cita:
Iniciado por GatorV Ver Mensaje
En ese caso haz un cronjob o tarea recurrente que se ejecute cada 10 minutos por ejemplo que compruebe si un usuario esta o no inactivo y cambie el campo de 1 a 0.

Saludos.
Gracias por reponder,

No tengo idea de como hacer cron job, por favor podria pasarme algún ejemplo o manual para hacer.

Si hay otra manera de solucionar mi problema seria excelente.

Muchas gracias

Otra duda que tengo supuestamente como voy rescatar el id de esuario, si la session esta cerrado para actualizar ese usuario.

Porque ahora lo saco el id de la sessión
para actualizar el valor =1

gracias nuevamente

Última edición por Zack78; 13/05/2009 a las 19:15
  #6 (permalink)  
Antiguo 13/05/2009, 21:15
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Saber cuando a cerrado Session en php

Lo que haces es guardar en una tabla de sesiones activas el ultimo movimiento del usuario y luego creas un script que compare ese ultimo movimiento, si es mayor a por decir 5 minutos, deslogueas al usuario.

El cronjob se crea en tu servidor, no se hace en PHP, lo que haces en PHP es el script para conectarte a la base de datos y actualizar el estado, pero desde el panel de control de tu hosting es donde programas que ese script se ejecute cada X tiempo.

Saludos.
  #7 (permalink)  
Antiguo 14/05/2009, 15:00
(Desactivado)
 
Fecha de Ingreso: enero-2008
Mensajes: 272
Antigüedad: 16 años, 3 meses
Puntos: 1
Respuesta: Saber cuando a cerrado Session en php

Cita:
Iniciado por GatorV Ver Mensaje
Lo que haces es guardar en una tabla de sesiones activas el ultimo movimiento del usuario y luego creas un script que compare ese ultimo movimiento, si es mayor a por decir 5 minutos, deslogueas al usuario.

El cronjob se crea en tu servidor, no se hace en PHP, lo que haces en PHP es el script para conectarte a la base de datos y actualizar el estado, pero desde el panel de control de tu hosting es donde programas que ese script se ejecute cada X tiempo.

Saludos.
Gracias por reponder.

Se ve interesando voy investigar como funciona.

Una consulta y no habra alguna forma de saber cuando cierra venta del navegador, en el momento que cierra la venta actualizar el valor =0

gracias nuevamente.
  #8 (permalink)  
Antiguo 14/05/2009, 21:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Saber cuando a cerrado Session en php

No, recuerda que el protocolo HTTP es stateless es decir sin estado, PHP se procesa en el servidor por lo que cuando la pagina ya esta en el cliente no puedes saber nada con PHP, sin que el cliente te lo informe, y actualmente no hay una forma certera de que el cliente te informe ese estado de regreso al servidor.

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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 20:40.