Foros del Web » Programando para Internet » PHP »

Cerrar ventana = cerrar sesión

Estas en el tema de Cerrar ventana = cerrar sesión en el foro de PHP en Foros del Web. Tal cual cómo el título lo dice... No logro conseguir eso, a pesar de que he probado lo dicho en el foro y en otras ...
  #1 (permalink)  
Antiguo 11/11/2008, 09:32
 
Fecha de Ingreso: abril-2007
Mensajes: 42
Antigüedad: 17 años
Puntos: 0
Exclamación Cerrar ventana = cerrar sesión

Tal cual cómo el título lo dice... No logro conseguir eso, a pesar de que he probado lo dicho en el foro y en otras url's. He aquí un intento:

ini_set("session.use_trans_sid","0");
ini_set("session.use_only_cookies","1");
session_start();
session_set_cookie_params(0, "/", $HTTP_SERVER_VARS["HTTP_HOST"], 0);

Pero nada...


HELP!!!
  #2 (permalink)  
Antiguo 11/11/2008, 10:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Cerrar ventana = cerrar sesión

mira... el problema radica en tu concepción del problema...

PHP se ejecuta en el servidor, así que no hay modo que sepa si cerraste o no la ventana (pestaña, etc)

aunque exprimas las opciones de las sesiones no lo lograrás así... no debes buscarle mas pies al gato

simplemente, después de un rato... se caduca sola la sesión ¿cual es el problema real??

espero comprendas, suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 11/11/2008, 13:41
 
Fecha de Ingreso: octubre-2008
Mensajes: 180
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Cerrar ventana = cerrar sesión

Prueba esto:

Código PHP:
<?  
session_start
();  
session_destroy();
header("Location: http://www.tuweb.es/index.php");  
?>
Te busca la sesion existente, la destruye, y te lleba a donde tu imaginación quiera :)
  #4 (permalink)  
Antiguo 11/11/2008, 14:31
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
Respuesta: Cerrar ventana = cerrar sesión

Tenés eventos en javascript que te permiten saber cuando se cierra la ventana (onbeforeunload (http://www.experts-exchange.com/Prog..._22510148.html)). Deberías hacer un llamado en background syncr (podés usar AJAX) y ahí hacer lo que te dice Xematick.

Preguntá en el foro de AJAX o JS para más información.

PD: Adivino que esta ventana es un popup y en otra sigue el site abierto...es así?
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #5 (permalink)  
Antiguo 11/11/2008, 14:40
Avatar de srsombrero  
Fecha de Ingreso: marzo-2008
Mensajes: 128
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Cerrar ventana = cerrar sesión

Cita:
Iniciado por nicolaspar Ver Mensaje
Tenés eventos en javascript que te permiten saber cuando se cierra la ventana (onbeforeunload (http://www.experts-exchange.com/Prog..._22510148.html)). Deberías hacer un llamado en background syncr (podés usar AJAX) y ahí hacer lo que te dice Xematick.

Preguntá en el foro de AJAX o JS para más información.

PD: Adivino que esta ventana es un popup y en otra sigue el site abierto...es así?

Código HTML:
<head>
<script type="text/javascript">
       window.onbeforeunload = function(){
            alert("Esta por cerrar!");
           //AQUI LA LLAMADA AL PHP QUE TE CIERRA LA SESSION
        }
</script>
</head> 
Una forma podria ser la anterior.

Suerte
  #6 (permalink)  
Antiguo 11/11/2008, 14:47
 
Fecha de Ingreso: abril-2007
Mensajes: 42
Antigüedad: 17 años
Puntos: 0
Respuesta: Cerrar ventana = cerrar sesión

A ver... el último código se ejecuta cada vez que se cierra cada página del sistema. Es mejor ocupar el término "se des-carga" en éste caso.

Mi problema reside en que, si algún usuario no cierra su sesión al cerrar la ventana, al volver entrar al sistema su sesión quedó abierta, por lo que sería un agujero de seguridad considrable.

Además, lo necesito para llevar un registro de las conexiones de los usuarios al sistema.
  #7 (permalink)  
Antiguo 11/11/2008, 14:52
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Cerrar ventana = cerrar sesión

Si la sesión tiene un tiempo de caducidad razonable no veo que sea un problema de seguridad.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #8 (permalink)  
Antiguo 11/11/2008, 21:01
 
Fecha de Ingreso: abril-2007
Mensajes: 42
Antigüedad: 17 años
Puntos: 0
Respuesta: Cerrar ventana = cerrar sesión

Okey.
Pero ¿cómo harías para llevar un registro en MySql del término de sesión de un usuario?
Me agrada la idea de limitar el uso de la sesión pero ¿no hay nada más prolijo?
  #9 (permalink)  
Antiguo 12/11/2008, 06:27
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
Respuesta: Cerrar ventana = cerrar sesión

Yo me perdí con lo que queres/necesitas.
Hay miles de maneras de autentificar, solo unas pocas seguras y eficientes, de ahí hay que filtrar por el pedido...el tema es que personalmente no comprendo que queres hacer.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #10 (permalink)  
Antiguo 13/11/2008, 21:21
 
Fecha de Ingreso: abril-2007
Mensajes: 42
Antigüedad: 17 años
Puntos: 0
Respuesta: Cerrar ventana = cerrar sesión

Cerrar la sesión al hacer click en la X del navegador, es decir, cuando el usuario cierra la pantalla...

Algo como if (push.close) then session_destroy()
  #11 (permalink)  
Antiguo 14/11/2008, 06:22
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
Respuesta: Cerrar ventana = cerrar sesión

Y por qué no usas onbeforeunload (buscá que sea compatible con los browsers, sino buscá una función que sirva para todos, gmail por ejemplo lo tiene implementado así que existe) haciendo una llamada por AJAX (hasta acá es JS) a un PHP que haga el detroy a la session?

Cuando necesité hacerlo así lo implemente y no tuve ningún problema.


PD: Que es lo que te dije en principios y luego srsombrero te dió un ejemplo.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #12 (permalink)  
Antiguo 14/11/2008, 22:23
 
Fecha de Ingreso: abril-2007
Mensajes: 42
Antigüedad: 17 años
Puntos: 0
Respuesta: Cerrar ventana = cerrar sesión

Gracias por las sugerencias.
Suerte a todos en sus proyectos!
  #13 (permalink)  
Antiguo 13/08/2009, 10:47
Avatar de ricardoernes  
Fecha de Ingreso: agosto-2009
Ubicación: Miranda
Mensajes: 188
Antigüedad: 14 años, 9 meses
Puntos: 4
Exclamación Respuesta: Cerrar ventana = cerrar sesión

Cita:
Iniciado por cypherm Ver Mensaje
Gracias por las sugerencias.
Suerte a todos en sus proyectos!
hola ... y la solicion cual fue? o cual eS? yo tengo el mismo problema
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 10:03.