В настоящее время я пытаюсь отобразить онлайн-администраторов на моем сайте. Я хотел бы, чтобы они отображались как подключенные к сети в течение 15 минут, пока в течение этого времени не будет обнаружено никаких действий, а затем они будут отображаться как отключенные.
Код, который у меня есть, ниже, но с < 60
Я не понимаю, секунды или минуты и т.д., поэтому не могу определить, какие 15 минут будут. $rowAdmins['activity']
сохраняется как метка времени Unix.
Код:
<?php
$findAdmins = $odb->prepare("SELECT * FROM `users` WHERE `rank` = '1'");
$findAdmins -> execute(array($_SESSION['ID']));
while($rowAdmins = $findAdmins->fetch(PDO::FETCH_BOTH)){
$diffOnline = time() - $rowAdmins['activity'];
$countOnline = $odb->prepare("SELECT COUNT(*) FROM `users` WHERE `username` = :username AND :diffonline < 60");
$countOnline->execute(array(':username' => $rowAdmins['username'], ':diffonline' => $diffOnline));
$onlineCount = $countOnline->fetchColumn(0);
if($onlineCount == "1"){
echo '<div>'. $rowAdmins['username'] .' <img src="/user-online.png" alt="'. $rowAdmins['username'] .' is online" title="'. $rowAdmins['username'] .' is online"></img></div>';
} else {
echo '<div>'. $rowAdmins['username'] .' <img src="/user-offline.png" alt="'. $rowAdmins['username'] .' is offline" title="'. $rowAdmins['username'] .' is offline"></img></div>';
}
}
?>