todo depende cuan transitada sea tu web. Yo tengo este codigo donde registra al usuario con opcion 1 (conectado) 0 (desconectado)
Código PHP:
Ver original<?
$ip=$_SERVER[REMOTE_ADDR];
$limite=($tiempo-24)*60;
$ssql = "update conexion set con_estado='0' where con_tiempo<".$limite;
$ssql = "select * from conexion where con_usu_rut='".$usuario."'";
$ssql="update conexion set con_ip='".$ip."', con_hora='".$hora."', con_ultima_conexion='".$fecha."', con_tiempo='".$tiempo."', con_estado='1' where con_usu_rut='".$usuario."'";
}else{
$ssql="insert into conexion values('".$usuario."','".$ip."','".$hora."','".$fecha."','".$tiempo."','1')";}
?>
eso si cuando otro usuario se loguea baja a todos los usuarios inactivos despues de unos minutos. Quiere decir que si alguien no se loguea en varios dias, esos usuarios mostraran como conectados. Espero te sirva.