如何通过从数据库中抓取最后一个在线来检查用户是否在线?

时间:2016-11-08 15:51:29

标签: php

这就是我所拥有的,但由于某种原因,它给了我一个错误。 我怎么能这样做?

function calc_online_users()
{
    global $pdo;
    $c = 0;
    $till = date('Y-m-d h:i:s', strtotime("-5 minutes"));
    $query = $pdo->query('SELECT * FROM members');
    while($result = $query->fetch(PDO::FETCH_ASSOC))
    {
        if($result['uLastLogin'] > $till)
        {
            $c++;
        }
    }
    return $c;
}

1 个答案:

答案 0 :(得分:0)

您可以使用SQL来计算项目,只需获取:

$minutes=5;
$c=$pdo->query("SELECT COUNT(*) FROM members WHERE uLastLogin > DATE_SUB(NOW(), INTERVAL $minutes MINUTE)")->fetchColumn();