Я создаю функцию, чтобы показать, сколько пользователей сейчас в сети. Это зависит от того, кто открыл страницу за последние 5 минут. Каждая нагрузка страницы сохраняется в мою БД, ниже:Количество записей в DB PHP
На данный момент у меня есть следующий код
$query = mysql_query("SELECT user_id, timestamp FROM user_actions WHERE timestamp > date_sub(now(), interval 5 minute)");
$onlineUsers = mysql_num_rows($query);
Это просто суммирование количества строк, как я могу сделать это так, он только учитывает user_id один раз? (Так в вышеупомянутой базе данных фрагмента код должна быть 2 не 5)
Если вам явно не нужно возвращать метку времени, не ...., а затем просто 'SELECT DISTINCT user_id FROM ...' –
Пожалуйста, не используйте 'mysql_ *' api. Swap to 'PDO' или' mysqli', 'mysql' api устарел и удален в более поздних версиях php (по уважительным причинам). – Jite
'$ query = mysql_query (" SELECT DISTINCT (user_id), timestamp FROM user_actions WHERE timestamp> date_sub (now(), interval 5 minute) ");' попробуйте этот запрос –