Hola, estoy trabajando en la misma aplicacion que edinson.
Creo que tenemos algo parecido a la tabla de sesiones que sugiere mxgxw. Tenemos una tabla de bitacora en la que se guarda la fecha-hora en la que entra cada usuario y desde la ip que entra, tambien se registra la fecha-hora, ip cuando sale de la aplicacion. Cada usuario tiene 30 minutos de sesion, y cada vez que se carga una pagina se comprueba que no se hayan terminado esos 30 minutos:
$Ahora=time();
$TiempoRestante=$Sesion-($Ahora-$UltimoAcceso);
if (!$UltimoAcceso || $TiempoRestante<0){
echo "
<script language='javascript'>
parent.location.href='/';
window.alert('Usted no tiene permiso para utilizar esta aplicación o su sesión expiró\\n".
"Vuelva a introducir su nombre de usuario y contraseña.');
</script>
";
exit(); // acabo la aplicacion
}
else{
$UltimoAcceso=$Ahora;
...
}
Como ven, el lastlogin lo manejamos con variables de sesion ($UltimoAcceso). Podriamos consultar la bitacora para verificar que el usuario se logueado y si ha salido, pero si el usuario no cierra sesion, sino que solo cierra el navegador, no puedo saber si esta activo o no, porque no creo que pueda consultar variables de otra sesion...
En fin no se si me explique bien, pero si nos pueden ayudar...