Перейти к публикации

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

у меня до этого модулья стоял онлайн 2.3 такого не было

не, ну не всё же из модуля он-лайн 2.3 содрано) Тут есть и другие авторы и модули :lol: шучу) хотя в каждой шутке есть доля шутки)

Ссылка на сообщение
Поделиться на других сайтах

Из других модулей я вообще ничего не брал.

Начинаю попорядку.

Попробуйте после $time = time() - $options['time_out'] * 60;

вставить srand((double)microtime()*1000000);

Если не поможет

substr_count($rand/2, ".") == 0
заменить на
1

(именно так)

бред. я попозжа подругому сдела.

хм.... выше не читать мой пост....посмотрел ещё раз код.

Почему не может то?

У пользоавателей сменился ИП и всё - мы получаем новый ключ.

$key = md5($member_id['user_id'].$_IP);

А дубликат создаться не может т.к. сверяется ключ. А ключ одинаковый

разный ключ, разный.

Естественно другой. Я же писал выше.

Может это зависит не от модуля? А например от настроек сервера?

судя по всему от модуля. А какой у вас пхп стоит? на версиях ние 4,2 могут быть проблемы с генератором случайных чисел, а он отвечает за очистку таблицы. Как он будет себя вести на версиях ниже 4,2 я не знаю, но знаю, что по стандрту - в коде недоработка, из-за которой могут быть проблемы. И второе - возможно вам не попадались юзеры с динамическими ип.

Роботы кстати так же будут двоится. $key = md5($robot.$_IP);

И ещё сразу вижу баг - будет путаница, если несколько юзеров заходят с одного ип. У них местонахождение будет глючить, т.к. обновление локации идёт по ип.

$db->query("UPDATE ".PREFIX."_online SET time='$_TIME', location='{$location}' WHERE ip='{$_IP}'");

И ещё баг - нет проверки условия того, что выполнен запрос инсерта. Отсюда - в некоторых ситуациях при добавлении информации в базу будет 2 запроса вместо 1 (внешне это никак не отразится)

Угу, забыл поменять эту часть кода после совета celsoft.

Приведи пример. Не совсем понимаю.

///

Может всё таки не по ключу сверять, а по юзер нэйму? Для ботов: имя бота = юзер нэйм?

Изменено пользователем flo.mAster
Ссылка на сообщение
Поделиться на других сайтах

Роботы кстати так же будут двоится. $key = md5($robot.$_IP);

И ещё сразу вижу баг - будет путаница, если несколько юзеров заходят с одного ип. У них местонахождение будет глючить, т.к. обновление локации идёт по ип.

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

А по поводу "нескольких юзеров", почему тогда я с одним ай-пи, но в разных браузерах не "двоюсь" :)

Ссылка на сообщение
Поделиться на других сайтах

бред.

почему? если заменить на 1, услвие будет выполнятся всегда. Т.е. вот так if (1). А зачем? Элементарно - чтобы долго не описывать тут что на что менять, а так я сцитировал одну строку кода и всё.

А нужно, затем, чтоб отключить вероятностную очистку.

Естественно другой. Я же писал выше.

да, писал, но ведь ип может смениться быстрее, чем произойдёт очистка.

Приведи пример. Не совсем понимаю.

У тебя сначала будет инсерт юзверя в базу, а потом апдейт этой же информации.

Может всё таки не по ключу сверять, а по юзер нэйму? Для ботов: имя бота = юзер нэйм?

Можно, только сверять по ключу, ибо ник-нейм ты не сделаешь уникальным ключём из-за гостей, а вот формировать ключ из ника - реально.

А по поводу "нескольких юзеров", почему тогда я с одним ай-пи, но в разных браузерах не "двоюсь"

привызяки к броузеру или сессии - нету.

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

люди жаловались) а я тоже не видел, я даже модуль не ставил :lol: Просто наблюдаю за темой, т.к. интересно как модуль рождается)

Ссылка на сообщение
Поделиться на других сайтах

Вижу, что люди здесь знающие собрались :)

Подскажите: у меня стоит коррекция времени в админке, к примеру на 60 минут, из-за этого глючит модуль: ник пользователя исчезает не через 5 минут отсутствия, а через 65...

Как это исправить?

Ссылка на сообщение
Поделиться на других сайтах

Вижу, что люди здесь знающие собрались :)

Подскажите: у меня стоит коррекция времени в админке, к примеру на 60 минут, из-за этого глючит модуль: ник пользователя исчезает не через 5 минут отсутствия, а через 65...

Как это исправить?

Модуль никак не отностися к коррекции времени в настройках дле. Время берётся серверное, и применяется только для того, что бы знать что очищать.

Хотя может я и не прав. ..

Ссылка на сообщение
Поделиться на других сайтах

Хотя может я и не прав

Проверьте. Когда в настройках дле убрал коррекцию - модуль стал работать как надо, очищать ровно через 5 минут. Ставлю коррекцию обратно - жду 65 минут...

Например во всем известном модуле пава тоже аналогичная проблема наблюдалась. Писалось, что пользователь был минус-столько-то секунд назад, если в дле была коррекция времени. Лечилось добавлением коррекции в самом модуле, например: time()+3600.

Изменено пользователем Tutanhamon
Ссылка на сообщение
Поделиться на других сайтах

Хотя может я и не прав. ..

угу, не прав)

$time = time() - $options['time_out'] * 60;

заменить на

$time = $_TIME - $options['time_out'] * 60;

Вот кстати интересно - по какому принципу синхронизируются куки, т.е. дата их удаления)

PS: после исправления несколько раз перезагрузить страницу

Ссылка на сообщение
Поделиться на других сайтах

Хотя может я и не прав. ..

угу, не прав)

$time = time() - $options['time_out'] * 60;

заменить на

$time = $_TIME - $options['time_out'] * 60;

Вот кстати интересно - по какому принципу синхронизируются куки, т.е. дата их удаления)

PS: после исправления несколько раз перезагрузить страницу

Просто указывается жизнь кука. Браузер сам его удалит после того как пройдёт 5 минут.

Ссылка на сообщение
Поделиться на других сайтах

flo.mAster,

нет. там указывается время, когда кука будет недействительна. Так вот с чем это время синхронизировано. с time сервера, с абсолютным временем +0 gmt, с временем на компьютере пользователя или ещё как. вот в чём вопрос :P

Ссылка на сообщение
Поделиться на других сайтах

flo.mAster,

нет. там указывается время, когда кука будет недействительна. Так вот с чем это время синхронизировано. с time сервера, с абсолютным временем +0 gmt, с временем на компьютере пользователя или ещё как. вот в чём вопрос :P

компа скорее всего, ибо с временем сервера - тупо

ну что как там дела по модулю ? сделали обновления ?

давно уже есть 3.0 версия

Ссылка на сообщение
Поделиться на других сайтах

компа скорее всего, ибо с временем сервера - тупо

и как тогда правильно установить время удаления куки на 5 минут. А если мы в другом часовом поясе?) На самом деле надо оригиналы доков почитать) Я не очень доверяю этой "стандартной возможности" броузера, поэтому не использую её, а ты должен в этом разобраться, раз используешь.

Кстати это не тупо, а очень даже логично было бы, ты же прибавлеяешь время жини к time().

Изменено пользователем Al-x
Ссылка на сообщение
Поделиться на других сайтах

компа скорее всего, ибо с временем сервера - тупо

и как тогда правильно установить время удаления куки на 5 минут. А если мы в другом часовом поясе?) На самом деле надо оригиналы доков почитать) Я не очень доверяю этой "стандартной возможности" броузера, поэтому не использую её, а ты должен в этом разобраться, раз используешь.

Кстати это не тупо, а очень даже логично было бы, ты же прибавлеяешь время жини к time().

Интересно кстате. Я никогда об этом не задумывался)))

Ссылка на сообщение
Поделиться на других сайтах

Хочу поставить на свой сайт этот модуль и чего-то не совсем догоняю как это сделать правильно...

А именно я не пойму что значит: В PhpMyAdmin сделайте запрос... Это как? Объясните поподробнее, я сам ещё не умею ставить дополнительные модули... Может кто-нить мне сам поставит этот модуль?

Ссылка на сообщение
Поделиться на других сайтах

ну что тестинг показал:

Роботы: Google Bot, Archive.org, MSN Bot, MSN Bot, MSN Bot

боты дублируются, что за фигня ? а может это норма ?

Значит боты с разных IP сидят. Думаю над этим решением.

Ссылка на сообщение
Поделиться на других сайтах

Сегодня написал класс для работы модуля без запросов к базе данных. Скоро будем вместе тестить ...

Ссылка на сообщение
Поделиться на других сайтах

через браузер Opera mini мой сайт не грузится, пишет что не может загрузить online.tpl

Как правильно удалить счётчик с моего сайта?

Изменено пользователем bestprogs
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...