Ver Mensaje Individual
  #2 (permalink)  
Antiguo 03/09/2006, 15:39
califa010
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 18 años, 3 meses
Puntos: 5
Buenas,

Una manera que se me ocurre es usando el evento onunload de javascript, que se dispara cuando el usuario cierra el navegador. Tiene el inconveniente de que vas a depender en algo del cliente (que tenga javascript habilitado).

Pero me parece que no sería tan terrible, porque, primero, la mayoría de los usuarios navegan con js habilitado, segundo, en el peor de los casos el efecto no sería crítico (pérdida momentánea de acceso) y, de última, si alguien decide deshabilitarlo, bueno, se está resignando a perder funcionalidad (una "ayuda" que le estás dando, en este caso).

Podrías advertir que tu sistema requiere javascript para ser usado en toda su funcionalidad, y si se elige deshabilitarlo y no se sale del sistema como está indicado, se tendrá el inconveniente que marcás. Me parece que el "trato" es razonable.

Si te interesa investigar esta opción, te dejo un ejemplo muy simple.

Código HTML:
<html>
<head>
<script type="text/javascript" language="javascript">
function test() {
	window.alert("adiós");
}
window.onunload = test;

</script>
</head>
<body>
</body>
</html> 
Suerte
Califa

PD: También está el evento onbeforeunload. Ahora, leyendo un poco más sobre el tema (por ej. acá: http://p2p.wrox.com/topic.asp?TOPIC_ID=37129) puede que usar esa técnica no sea tan buena idea... Ahí sugieren otra opción, al final del thread; usar Ajax para mantener el estado de la sesión a intervalos más cortos...
Más sobre onbeforeunload acá: http://discuss.joelonsoftware.com/de...gn.4.357494.18

Última edición por califa010; 03/09/2006 a las 15:59