| ||||
Respuesta: Hacer que una sesion no caduque Es bastante dificil trabajar con un simple "SI" o "NO", varias veces se ha comentado que lo mejor es guardar fecha y hora de la ultima actividad de cada usuario y, en base a eso, obtener el listado de quienes "estan conectados", considerando un limite de tiempo que tu quieras, por ejemplo, 15 minutos. Que necesitas? 1- Un campo en tu tabla donde puedas almacenar fechas: DATE, TIMESTAMP, INT o el de tu preferencia 2- Cada que el usuario ingrese a una pagina de tu sitio actualizas ese campo con la fecha y hora del sistema 3- Para generar el listado, debes definir el limite maximo de inactividad para considerar que "estan conectados" y hacer tu consulta con ese filtro, ejemplo para 30 minutos: time() - 1800 |
| ||||
Respuesta: Hacer que una sesion no caduque Gracias Osea tengo que cambiar este campo online por la fecha de ingreso del usuario pero me lo podrias representar en codigo por que me han dicho que lo tengo que guardar en un cookie y cambiar la duracion de la sesion con la variable in set pero como lo hago ese es mi problema |
| ||||
Respuesta: Hacer que una sesion no caduque A ver, como dijo Jack: Vamos por partes. Una cosa es la duracion de la sesion, esa puedes controlarla con variables de sesion y/o cookies y otra muy diferente es mostrar los usuarios conectados en tu sitio, para eso serviria el campo de fecha y el proceso es simple:
Código:
Para mantener la sesion activa, necesitaras usar cookies, por ejemplo:// Cuando el usuario abre cualquier pagina de tu sitio: UPDATE usuarios SET campo_de_fecha = fecha_del_sistema WHERE identificador_de_usuario = variable_de_sesion // Despues, para obtener el listado de los usuarios conectados // tomas en cuenta solo aquellos que han tenido actividad en // los ultimos 30 minutos (este valor puedes cambiarlo a tu gusto) SELECT * FROM usuarios WHERE campo_de_fecha > fecha_del_sistema - 30 minutos
Código PHP:
Ver original Esto es solo un breve ejemplo de como mantener sesiones activas por medio de cookies con un pequeño agregado de seguridad (aunque no es del todo seguro). Solo no olvides eliminar la cookie (o guardarla con valor vacio y fecha de expiracion rapida) cuando un usuario haga click en finalizar sesion. |
| ||||
Respuesta: Hacer que una sesion no caduque encontré esto con google, prueba a ver que tal te funciona a ti:
Código PHP:
Ver original Segun he visto, el numero son los minutos de vida de la sesión. Lo encontré aquí: http://www.forosdelweb.com/f18/funci...ion-pq-298529/ . Si lees ese post te daras cuenta de que a lo mejor tienes que cambiar el php.ini
__________________ Mas vale un codigo que mil palabras |
| ||||
Respuesta: Hacer que una sesion no caduque Gracias pero ese codigo lo tengo que pegar en cada pagina o solo en la cual se le da el valor a la sesion por ejemplo en el sistema de login cuando se crea la sesion o en todas las paginas en la cual se esta utilizando |
| ||||
Respuesta: Hacer que una sesion no caduque EDITO: Veo que un compañero justo debajo te dijo lo mismo que yo incluso mejor explicado. Estoy atento al resultado del POST, ya que estoy gestionando una web de gestión de usuarios y el tema me interesa muchísimo. Compañero estube pensando. ¿Si agregas ademas del estado ON/OFF un campo con date/time? así si pasan mas de 30 minutos de inactividad se ponga en OFF. Eso detectará si has cerrado el navegador mas de 30minutos. ¿Entendiste? Última edición por incaib; 05/06/2012 a las 02:06 Razón: Por no leer ahora toca editar. |
| ||||
Respuesta: Hacer que una sesion no caduque Alguien más ha podido resolver esto?? yo tambien sigo sufriendo con lo mismo. Tengo un sitio donde tienen que contestar un examen en linea. Pero aveces sucede que se tardan tanto en contestar que cuando le dan enviar, les marca error porque ya caducó y tienen q volver a entrar, etc. Alguien ha obtenido la solución a esto??? saludos!!!
__________________ Lo que haces, determina lo que eres. Saludos! |
| ||||
Respuesta: Hacer que una sesion no caduque Lo que yo hago en estos casos es tener un request AJAX de fondo que se ejecute cada minuto por ejemplo, lo único que hace es refrescar la sesión para que esta no caduque, es la solución más eficiente que he visto. Saludos. |
| ||||
Respuesta: Hacer que una sesion no caduque MFT ¿Si subes la caducidad del cookie el expire a varias horas?. Por defecto son 3600 segundo si no estoy errado. Aquí el comando set_cookie de php [URL]http://php.net/manual/es/function.setcookie.php[/URL] Y lo importante el expire que es este valor expire El tiempo en el que expira la cookie. Es una fecha Unix por tanto está en número de segundos a partir de la presente época. En otras palabras, probablemente utilizará la función [URL="http://www.php.net/manual/es/function.time.php"]time()[/URL] más el número de segundos que quiere que dure la cookie. También podría utilizar la función [URL="http://www.php.net/manual/es/function.mktime.php"]mktime()[/URL]. time()+60*60*24*30 configurará la cookie para expirar en 30 días. Si se pone 0, o se omite, la cookie expirará al final de la sesión (al cerrarse el navegador). Si pones un expire alto al cookie no creo que les de tiempo a que se borre. ?Esto es lo que pides compañero? |
Etiquetas: |