[eluser]Pygon[/eluser]
Aye -- although i would use a standalone activity table keyed on crossreference user_id and having last_activity giving you the ability to SELECT > now() - X minutes and joining the user table on the results (rather than joining on to the user table and having PHP determine online status).
Course, it depends on whether you're displaying status for one user, only online users, or all users as to how you should write your join.
But yeah.