Считайте живых онлайн игроков - PullRequest
1 голос
/ 19 февраля 2020

У меня есть играбельный клиент, и я хочу отображать / отображать своих онлайн-пользователей на моей странице индекса. В моей базе данных у меня есть настройки таблицы и в этих двух строках настройки и значения. например Players.online и значение 0 в качестве стандарта, считая до каждого числа, сколько игроков онлайн. Но это не считается. Счетчик остается на 0.

function onlineusers(){
    $link = mysqli_connect("xxx", "xxx", "xxx" "`xxx");
    mysqli_query($link, "SELECT value FROM settings WHERE value = 'players.online'");
    $i = 0;
    while($b = mysqli_fetch_array($link)){
        if(onlineusers($b['players.online'])){
            $i++;
        }
    }
    return $i;
}

Ответы [ 2 ]

4 голосов
/ 19 февраля 2020

Вы можете посчитать количество строк в БД и вернуть его.

function onlineusers(){
    $link = mysqli_connect("xxx", "xxx", "xxx" "`xxx");
    $result = mysqli_query($link, "SELECT count(*) as total FROM settings WHERE value = 'players.online'");

    $data=mysql_fetch_assoc($result);
    return $data['total'];
}
1 голос
/ 19 февраля 2020

Должно быть в состоянии просто запустить COUNT () в вашем запросе вместо того, чтобы считать их в PHP.

SELECT COUNT(*) as NumOnline FROM settings WHERE value = 'players.online';
...