Список пользователей онлайн на внешних страницах

У вас есть идея для расширения функциональности phpBB 3.0.x? Расскажите о ней здесь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
neon_tmn
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 5 месяцев

Re: Список пользователей онлайн на внешних страницах

Сообщение neon_tmn »

Здравствуйте, решил не создавать новой темы, а написать здесь.
У меня есть сайт отдельно и отдельно лежит форум. На сайте сделал систему авторизации (файл login.php, есть такая тема на форуме), вобщем я получаю и user_id и все что надо, все в порядке. Но у меня на сайте есть некоторые страницы, где идет перечисление пользователей по определенным параметрам, и я хочу, чтобы рядом с теми пользователями кто онлайн, писалось слово "онлайн". Т.е. мне не нужно чтобы у меня выводился список онлайн пользователей через запятую, имея user_id, мне нужно проверить онлайн он или нет. как это сделать? Может какое то поле есть соответствующее в базе, или же может можно достать в виде массива список онлайнов и проверять id функцией in_array(), если этот id у меня есть в массиве, то написать при выводе рядом слово онлайн, затем следующего и так далее?
neon_tmn
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 5 месяцев

Re: Список пользователей онлайн на внешних страницах

Сообщение neon_tmn »

Пробовал как на 2-й странице делать, там массивы, но они не содержат списки пользователей, пробовал обходил эти массивы циклом foreach.
Подскажите кто знает. Как мне получить онлайн человек или нет, если я знаю его id?
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: Список пользователей онлайн на внешних страницах

Сообщение Nekstati »

Посмотрите во viewtopic.php: // Generate online information for user.
neon_tmn
phpBB 1.2.0
Сообщения: 11
Стаж: 16 лет 5 месяцев

Re: Список пользователей онлайн на внешних страницах

Сообщение neon_tmn »

Работает. Немного поменял код, чтобы небыло обращения к функциям и работало быстрее

Код: Выделить всё

$user_id=25; // в эту переменную или напрямую в запрос, передаем id нужного пользователя
$sql = "SELECT session_user_id, MAX(session_time) as online_time, MIN(session_viewonline) AS viewonline
           FROM `phpbb_sessions`
           WHERE session_user_id = '".$user_id."'
           GROUP BY session_user_id";
$result = mysql_query($sql);
if (mysql_num_rows($result) == 1)
   {
      $update_time = $config['load_online_time'] * 60;
      $row = mysql_fetch_array($result);
      $online = (time() - $update_time < $row['online_time'] && (($row['viewonline']) || $auth->acl_get('u_viewonline'))) ? 'Онлайн': 'Оффлайн';
   }
else
   {$online= 'Оффлайн';}
mysql_free_result($result);
echo $online;
Nekstati, Спасибо Вам большое, уже второй раз меня направляете на верный путь

Вернуться в «Запросы модов для phpBB 3.0.x»