我目前正试图在我的网站上显示在线管理员。我希望它们在线显示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>';
}
}
?>