Ja bym w tabelu uzytkownika zrobił takie pole jak session i tam wartość typu time()... jak to miałoby działać?
co kliknięcie jest UPDATE pola session do bazy danych z wartością time()+600, czyli na 10 minut od tego kliknięcia... i potem w stopce WHO IS ONLINE zaznaczasz:
SELECT user_nick FROM users WHERE session > $time
gdzie $time to time();
po kłopocie... jezeli kolo nie kliknie w ciągu 3 minut, nie zostanie updatowany jego profil i nie bedzie na liście online

pozdrawiam

EDIT -----------
przy okazji będziesz miał ostatnia wizytę usera

pozdro