Questo sistema interessa anche a me...
IO avrei pensato (ma non ancora sperimentato) di fare un controllo di ore e minuti...
Quando un utente di logga viene uppato un campo del database (logintempo) tramite (UPDATE) dell'ora attuale poi tramite while faccio una lista di ore e minuti minimi e una di ore e minuti massimi e poi controllo quei utenti che rispecchiano quella caratteristica creando un array: mysql_fetch_array() con l'elenco degli username degli utenti e stampandolo dove si vuole...
Questo però nn so ancora se funziona attendo anche io una risposta.