Перейти к содержимому
Русский язык для Invision Community 5

Последний вход с IP

Здравствуйте, решил сделать для группы админов и модеров показ ip пользователей в профиле.

Например когда пользователь на форуме то его ip показывает, Пример: Список онлайн.

 

Но как сделать чтобы когда пользователь вышел с форума то ip его показывал с какого он заходил, то есть последний ip с которого он входил.

 

Как так сделать? Какие за это переменные отвечают? И вообще есть ли они?

В ац есть что-то похоже но там показ с какого пользователь регался...

 

На данный момент когда в сети: http://hkar.ru/Fz4R

 

Когда в не сети: http://hkar.ru/Fz4S (как сделать так чтобы когда пользователь оффлайн то его ip показывал с какого он заходил последний раз?)

Рекомендованные сообщения

  • Автор

пардон... показывает только когда авторизован.

когда зашел в профиль, тогда эррор бд.

 

получается идёт сверка с айпи в колонке last_ip а его там нет вот и ошибка бд.

получается идёт сверка с айпи в колонке last_ip а его там нет вот и ошибка бд.

Это Вы как определили? При появлении ошибки, связанной с БД, смотрите логи.

Пора бы уже знать, что при упоминание о ошибке базы данных нужно смотреть логи. Без них это пустой разговор бабок на базаре, в котором у меня нет желания.

получается идёт сверка с айпи в колонке last_ip а его там нет вот и ошибка бд.

Какие-то околокультные высказывания. В приведенном коде стоит защита от дурака, запрос к бд не выполниться если отсутствует поле. А если бы чтото в нем и было то он бы положил весь форум, а не только авторизованных в профиле. Следовательно это результат ваших рук.

$this->DB->update( 'members', array ( 'last_ip' => $this->_member->ip_address ), 'member_id='.intval( $data_store['member_id'] ), false, true );

1. $data_store['member_id'] должно быть self::$data_store['member_id']

2. Пятый параметр метода update() в данном случае должен быть false, а не true

  • Автор

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Date: Fri, 18 Dec 2015 23:40:30 +0000
Error: 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE member_id=0' at line 1
IP Address: 213.184.234.86 - /index.php?&app=shoutbox&module=ajax§ion=coreAjax&secure_key=83fe71a4df2d301f6ee7a5b65297d473&type=getShouts&lastid=419&global=1
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
mySQL query error: UPDATE members SET Array WHERE member_id=0
.--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
| File                                                                       | Function                                                                      | Line No.          |
|----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------|
| admin/sources/classes/session/publicSessions.php                           | [db_main_mysql].update                                                        | 521               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/sources/base/ipsRegistry.php                                         | [publicSessions].__construct                                                  | 3905              |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/sources/base/ipsRegistry.php                                         | [ips_MemberRegistry].init                                                     | 3738              |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'
| admin/sources/base/ipsRegistry.php                                         | [ips_MemberRegistry].instance                                                 | 621               |
'----------------------------------------------------------------------------+-------------------------------------------------------------------------------+-------------------'

 

проблема в 521 строке как раз в строке что написал newbie

Поправил. Перепутал немного входящие значения местами.

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.