Попробуй использовать базу данных
$my_id = когда человек регестрируется ты даешь ему айди
Например: $my_id = $_SESSION['id'];
или
$my_id = $_COOKIE['id'];
делаешь таблицу в sql с названием online
в online делаешь таблицы ip, user, ip
if (isset($my_id)) {$user_online = $my_name;}
else {$user_online="guest";}
if ($user_online == 'guest') {$Online = mysqli_fetch_assoc(mysqli_query($mysqli, "SELECT `ip` FROM `online` WHERE `ip` = '$_SERVER[REMOTE_ADDR]'"));}
else {$Online = mysqli_fetch_assoc(mysqli_query($mysqli, "SELECT `user` FROM `online` WHERE `user` = '$user_online'"));}
if ($Online['ip']) {mysqli_query($mysqli, "UPDATE `online` SET `time` = NOW() WHERE `ip` = '$_SERVER[REMOTE_ADDR]'");}
else if ($Online['user'] && $Online['user'] != 'guest') {mysqli_query($mysqli, "UPDATE `online` SET `time` = NOW() WHERE `user` = '$user_online'");}
else {if($user_online)mysqli_query($mysqli, "INSERT INTO `online` SET `ip` = '$_SERVER[REMOTE_ADDR]', `user` = '$user_online', `time` = NOW()");}
Все подробно рассказано в источнике
Источник:
https://www.youtube.com/watch?v=S588D8yR_qI&list=P...