Ese es un problema que postee hace tiempo aqui y no me dieron solucion , ya que los usuarios no aconstumbrar a darle al boton de cerrar sesion, realmente controlar que cierre la ventana del navegador es practicamente imposible al 99% aunque uses javascript, porque por ejemplo pueden darse casuisticas de que cierre el ordenador de golpe, se le caiga internet...entre varias.
Te cuento lo que hize yo, usando ajax y un timer.
En la base de datos tengo un campo fecha, que cada 30 segundos se actualiza en la base de datos, de esta forma se cuando esta activo. y puedo controlar que por ejemplo no inicie dos sesiones.
Es importante usar ajax porque si se una el timer simplemente, es bastante molesto el recargo de la pagina cada X segundos, de esa manera se evita.
Simplemente el usuario cuando
intenta entrar en la aplicacion, consulta lo siguiente.
Cita: Select IdUsuario From Usuario where NombreUsu = 'triqui' and Pass = '12345' and DATEDIFF(mi, FechaActualizacion, getdate())>1
saludos