stai seguendo la strada sbagliata...

se vuoi una tabella con gli utenti online devi accontentarti di una tabella approssimata con diciamo uno scarto di 5 min

quando logghi o ripristini una sessione con utente loggato aggiungi/aggiorni una tablella contenente

id_utente ( key )
time timestamp (o quello ke preferisci per le date)

per sapere gli utenti online fai una sql sulla tablella estraendo gli id con clausola "time > now - 5 minuti"

non esistono procedure ke ti diano la garanzia ke venga effettuato il logout