Как сделать определение онлайн ли пользователь?
При каждом хите записываем дату и время.
Сравниваем ее с текущим временем.
??????
Профит!
На каждой странице(лучше в одном файле, которая подключена к каждой странице) сохраняете текущее время у текущего пользователя, к примеру - last_active = NOW()
ну и пользователь считается онлайн, если last_active + 15 минут > NOW()(тут уж сами смотрите в каком формате хранить дату/время) сейчас статус онлайн или оффлайн будет влиять на некоторое поведения сайта. 
В будущем будет чат общий, приватный, и прочее.  - ну вот кому это интересно?