cara primeiro: - onde voce define a funcao getOnlineUsers() ??? - no update tente fazer assim:
$sql = "UPDATE online SET total='$agora', data='$data', hora='$hora'";
Se a funcao getOnlineUsers() q esta dentro da variavel $agora não funcionar vai dar pau no update mesmo. tenta ver isso ae e me fala o q deu.