Deslogueo automatico

wolf

Buenas tardes,

Estoy haciendo una web para un trabajo en la cual se logean usuarios. Necesito q cuando cierren el navegador se deslogeen aotomaticamente. En la BD hay un campo para comprobar si esta logeado o no (para q un usuario no pueda tener 2 navegadores abiertos a la vez).
El caso es q no se como hacerlo. Me suena q en javascript hay una funcion para cuando se cierra el navegador, pero no la encuentro.

Si alguien fuera tan amable de ayudarme, le estaria muy agradecido. Si teneis en cabeza alguna otra solucion q no sea como la mia, tb acepto sugerencias.

Muchas gracias y un saludo.

Whose

Ayudaria que nos dijeses que sistema usas para almacenar el login ¿Cookies?

wolf

Lo siento, no cai en eso. Utilizo variables de sesion.

Deathtime

Cuando cierras el navegador las variables se borran, aun así, si lo que quieres es k al llegar a una página borrar las variables de sesión en PHP seria así.

session_unregister('User');

wolf

No no, creo q no me he explicado bien...

Lo q kiero es crear una funcion (php o javascript) que cuando se cierre el navegador, se modifique en la base de datos el campo "logueado" del usuario en cuestion.
Para que no se quede como logueado eternamente :P

KingFish

Para qué quieres un campo que te diga que ha cerrado el navegador, si al cerrar éste ya se destruye la sesión y no estará "logeado". No lo entiendo.
Si no usas cookies, cada vez que entre en la web tendrá que logearse.

wolf

A ver...lo q kiero controlar es q un usuario solo pueda estar logeado en un navegador/pc. Por esto, he añadido el campo "logueado" campo en la BD. Cuando el usuario se logea, el campo se modifica a "SI", de esta manera, si desde otro ordenador kiere logearse tb, no podra.
Lo que kiero es q cuando cierre el navegador, se modifique el campo "logueado" a "NO".

Ahora se entiende?

PD: si sabeis de alguna otra forma para hacer esto mismo, decirlo si kereis.

J-JONY

Lo que puedes hacer, es que la pagina intente ver cada X tiempo si el usuario sigue logueado, que es lo que normalmente se hacen en paginas que dicen los usuarios online, y si al cabo de ese X tiempo ves que el usuario no esta, pones la variable a OFF.

KingFish

Puedes guardar la IP del usuario al logearse y después ir comprobándola. En caso de logearse alguien desde otra IP y guardarla en el campo, el otro usuario ya no tendría los privilegios del login.

Es una chapuza pero podría funcionar. De todos modos y si no es mucho preguntar, ¿para qué es? Supongo que para eso y un par de cosas más están las contraseñas, que sólo permiten logearse al que la conoce.

IS4kO

Lo que dice el chico tiene toda su lógica, así que sin más:

Con el evento onUnload()

La función:

<script language="JavaScript">
function Chapamos()
{
alert("Estamos chapando");
}
</script>

En el body de la página:

< body onUnload="Chapamos()" >

wolf

Muchas gracias tio, dema lo probare, que m has pillado a punto de irme.
Ya te contare q tal, un saludo.

Usuarios habituales

  • wolf
  • IS4kO
  • KingFish
  • J-JONY
  • Deathtime
  • Whose