Перейти к контенту

Кнопка статистики по последним действиям


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

  • Ответы 62
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Лучшие авторы в этой теме

Загружено фотографий

всем у кого не получилось: $locasion на $location случаем не изменяли? :D
Ссылка на комментарий
Поделиться на других сайтах

Остап

Найти:
        $db_str = $DB->compile_db_update_string(
                   array(
                     'member_name'  => $this->member['name'],
             'member_id'    => intval($this->member['id']),
             'member_group' => $this->member['mgroup'],
             'in_forum'     => intval($ibforums->input['f']),
             'in_topic'     => intval($ibforums->input['t']),
             'login_type'   => $ibforums->input['Privacy'],
             'running_time' => $this->time_now,
             'location'     => $ibforums->input['act'].",".$ibforums->input['p'].",".$ibforums->input['CODE']
              )
            );

Не знаю, по каким словам ты искал этот блок (он специально дан куском, потому что там есть похожий), но нашёл явно не там. :D Тебе нужно было заменять в том месте, где update_member_session, а ты заменил в update_bot_session. Файл functions.php тебе придётся вернуть из бэкапа и ещё раз проделать все изменения...

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

theIggs Я тебе ещё в мыле хотел написать, что меня удивило, что ты меняешь в БотСешшнс, думаю ну и что это даст ? Хыыы ... Бывает, 3 раза ставил и 3 раза нарывался на БотСешшнс ... :D

 

Спасибо.

 

всем у кого не получилось: $locasion на $location случаем не изменяли?

Я сначала подумал, что ты ;) неграмотный :) , но потом поискав и покрутившись, понял, что ты намеренно и трогать не стал :)

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

theIggs Всё равно какие то недочёты непонятные :

 

http://www.donkeyhot.net/images/ostap/online3.JPG

 

1. Есть дыры - не видно в каком форуме или теме чел

 

2. Не понятно как чел мог сначала ответить - а ПОТОМ авторизироваться ... ( это не единичный случай )

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

theIggs Разобрался, почему Авторизируется посредине, но с ДЫРАМИ в темах и форумах нет :D

 

http://www.donkeyhot.net/images/ostap/online2.JPG

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

Ррррррр, неужели бывает и такое?

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

Добавлено в [mergetime]1076253947[/mergetime]

Кстати, theIggs , ты забыл вставить строки

      	 $locasion = $ibforums->input['act'].",".$ibforums->input['p'].",".$ibforums->input['CODE'].'|'.$this->location;
      	 if ($this->in_forum == '') $this->in_forum = '0';
      	 if ($this->in_topic == '') $this->in_topic = '0';
      	 $in_forum = intval($ibforums->input['f']).','.$this->in_forum;
      	 $in_topic = intval($ibforums->input['t']).','.$this->in_topic;
      	 
      	 $temp_loc = explode('|', $locasion);
      	 if (count($temp_loc) > 10)
      	 {
         $locasion = substr($locasion, 0, strrpos($locasion, '|'));
         $in_forum = substr($in_forum, 0, strrpos($in_forum, ','));
         $in_topic = substr($in_topic, 0, strrpos($in_topic, ','));
      	 }

 

в update_guest_session.

Если этого не сделать, то для гостей инфа не видна.

 

Добавлено в [mergetime]1076254113[/mergetime]

а.. ну вижу Остап уже обратил внимание на этот глюк.

Но это делается элементарно.. что ж ты Остап сам не исправишь, маестро тревожишь? ;)

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

Song

Дык ... тупой я :D Трабла остаётся НЕ ТОЛЬКО для гостей ! Начальную сессию тоже не видно - дыра при условии, что мэмбэр сидел в теме или форуме.

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

Начальную сессию тоже не видно

да, ты прав. Я не замечал что-то раньше.. покопаю сейчас

Конечно, автор-то быстрей разберётся, Iggs ты где? :D

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

Ну так и есть. :D

Решение оч. простое надо просто вставить вышеупомянутый мною кусок кода в ф-ии Create_member_session и Create_guest_session перед запросами в ibf_session

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

Всё-равно где-то есть эта трабла :D

Пишет: "Читает тему:", без ссылки

Iggs, вероятно, только ты можешь сказать где с большей долей вероятности.

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

Если этого не сделать, то для гостей инфа не видна.

Да я что-то про гостей вообще не подумал... :D

Начальную сессию тоже не видно

// Online.php

Найти:

  	 $location = $sess['location'].'|';
   $in_forum = $sess['in_forum'];
   $in_topic = $sess['in_topic'];

Заменить на:

  	 $location = $sess['location'].'|';
   $in_forum = $sess['in_forum'].',';
   $in_topic = $sess['in_topic'].',';

Просто алгоритм писался как обычно на коленке, всё такое... ;)

Решение оч. простое надо просто вставить вышеупомянутый мною кусок кода в ф-ии Create_member_session и Create_guest_session перед запросами в ibf_session

Нет, по-моему, это не должно влиять...........

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

theIggs Уже сам сделал, НО ... Почему то 9 видно вместо 10 ... Ну бред ...

 

Добавлено в [mergetime]1076345107[/mergetime]

Song

Кстати, theIggs , ты забыл вставить строки

 

CODE

 

        $locasion = $ibforums->input['act'].",".$ibforums->input['p'].",".$ibforums->input['CODE'].'|'.$this->location;

        if ($this->in_forum == '') $this->in_forum = '0';

        if ($this->in_topic == '') $this->in_topic = '0';

        $in_forum = intval($ibforums->input['f']).','.$this->in_forum;

        $in_topic = intval($ibforums->input['t']).','.$this->in_topic;

       

        $temp_loc = explode('|', $locasion);

        if (count($temp_loc) > 10)

        {

      $locasion = substr($locasion, 0, strrpos($locasion, '|'));

      $in_forum = substr($in_forum, 0, strrpos($in_forum, ','));

      $in_topic = substr($in_topic, 0, strrpos($in_topic, ','));

        }

 

 

 

 

в update_guest_session.

Если этого не сделать, то для гостей инфа не видна

 

Не забудь написать, что чуть ниже нада по другому апдэйтить тэйбл сессшнс ... Менять переменные ...

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

theIggs, тут уже посерьёзней: http://forum.sources.ru/index.php?showtopic=45180

:D

ну да, заменить $ibforums->... на $in_forum и $in_topic соответственно.

Добавлено в [mergetime]1076348634[/mergetime]

Починил вроде, наверно из-за того, что в создание сессии добавлял.

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

theIggs, а как сделать, чтобы одинаковые действия, рядом стоящие отображались как одно?
Ссылка на комментарий
Поделиться на других сайтах

Song Я тут нарыл кое что ... Я пошёл далее в твоей мысли ...

одинаковые действия, рядом стоящие отображались как одно?
А зачем их вообще вносить в базу ??? Неоторые рефрэшат нещадно, иногда, вместо 10 действий получится 3 .... А по моей, продвинутой мысли, мы бы получили ДЕЙСТВИТЕЛЬНО 10 последний РАЗНЫХ сессий ...

 

Чуть переделываем functions.php в двух местах : в update_member_session() и update_guest_session() --->>>

 

Находим начало кода Мастера theIggs :

$locasion = $ibforums->input['act'].",".$ibforums->input['p'].",".$ibforums->input['CODE'].'|'.$this->location;
      	    if ($this->in_forum == '') $this->in_forum = '0';
      	    if ($this->in_topic == '') $this->in_topic = '0';

Перед ним добавляем :

if ( (substr($this->location, 0, strpos($this->location, '|')) == $ibforums->input['act'].",".$ibforums->input['p'].",".$ibforums->input['CODE']) AND (substr($this->in_forum, 0, strpos($this->in_forum, ',')) == intval($ibforums->input['f']) ) AND (substr($this->in_topic, 0, strpos($this->in_topic, ',')) == intval($ibforums->input['t'])) ) 
       {
          return;
       }
       else
       {

Находим внизу функции :

$DB->query("UPDATE ibf_sessions SET $db_str WHERE id='{$this->session_id}'");
       }

ПОСЛЕ добавляем :

}

С функцией update_guest_session() примерно то же самое ...

 

Я ваще-то типа ламер - так что если что, поправьте меня :D

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

Не пугайся, увидев например :

Просмотр Главной Страницы Форума

Просмотр Главной Страницы Форума

Это потому, что 1 заход на форум отмечается как

,,
а последующие как
idx,,

Ну и с сёрчем бывает, т.к. в базе отмечаеся РАЗНОСТЬ сёрчей, но это не выводится в онлайн, а просто пишется типа ИЩЕТ чел ...

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

theIggs Ну ясный перец ... абижаиш :) Захочешь глянуть - свистни, а то у меня разрешено видеть только модерам и админам ...

 

Вот как это выглядит в файле ДЛЯ ОТДЕЛЬНО ВЗЯТОГО ЧЕЛА ( дэбагил ) - ты поймёшь, чё с базы, чё нет ... ;)

February 10, 2004, 14:35:24

Юзверь -> DIDRO

Location -> ,,

In forum ->

In topic ->

SUBSTR Location -> INPUT Location -> ST,,  AND Location ->

SUBSTR In forum -> INPUT In forum -> 42 AND In forum ->

SUBSTR In topic -> INPUT In topic -> 5675 AND In topic ->

 

February 10, 2004, 14:35:26

Юзверь -> DIDRO

Location -> ST,,|,,

In forum -> 42,0

In topic -> 5675,0

SUBSTR Location -> ST,,  INPUT Location -> ST,, AND Location -> 1

SUBSTR In forum -> 42  INPUT In forum -> 42      AND In forum -> 1

SUBSTR In topic -> 5675  INPUT In topic -> 5675  AND In topic -> 1

 

ТОЖЕ САМОЕ ? В базу не идёт !

 

February 10, 2004, 14:38:37

Юзверь -> DIDRO

Location -> ST,,|,,

In forum -> 42,0

In topic -> 5675,0

SUBSTR Location -> ST,, INPUT Location -> SF,,  AND Location ->

SUBSTR In forum -> 42    INPUT In forum -> 23  INPUT In forum ->

SUBSTR In topic -> 5675 INPUT In topic -> 0  AND In topic ->

:D

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

По-моему топики не двоятся, но названия разделов и остальные действия - двоятся.

Добавлено в [mergetime]1076513455[/mergetime]

Предлагаю более простое решение.

В online.php весь список выводится запросом:

$DB->query("SELECT s.id, s.in_forum, s.in_topic, s.member_name, s.member_id, s.ip_address, s.running_time, s.location,
        s.login_type, s.member_group, g.prefix, g.suffix
       FROM ibf_sessions s, ibf_groups g
       WHERE s.running_time > $t_time AND s.member_group=g.g_id $db_mem ORDER BY $db_key $db_order LIMIT ".$this->first.",25");

Предлагаю его видоизменить так, чтобы значения s.in_forum и s.in_topic выводились без сдвоенных записей, там что-то добавить надо к нему, я пока в этих запросах ещё только разбираюсь, чтобы самому это сделать.

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

Song

В online.php весь список выводится запросом:

Но ведь тогда число действий у всех пользователей будет разное... Кто-то, скажем, сидит только в одном месте или читает большую тему - у него будет вообще одно действие...

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

А готовый хак, с учётом всех исправлений уже есть?

Или пока нет? Если есть, то нельзя ли посмотреть, интересно...

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

Song

По-моему топики не двоятся, но названия разделов и остальные действия - двоятся

Я объяснял почему. Это проблема не моя, а форума. ОН НЕ ВЫВОДИТ до конца ( подробно ) местоположения ...

 

Я спросил только что был чел в том же месте ?

В базе написано :

Search,,02

а щяс хде ?

Search,,03, пишем в базу и выводим на экран ... А вот при выводе на экран ФОРУМОМ не предусмотрена градация сёрча, что 02, что 03 CODE пишет тебе : Использование поиска ...

 

То же самое и в некоторых других случаях ... Кстати, несмотря на то, что чел по сути отвечает в ТЕМУ, форум сообщает тебе об ответе в ФОРУМ, что тоже не есть гуд ... Вот и переделай ... :D

Добавлено в [mergetime]1076532303[/mergetime]

Предлагаю его видоизменить так, чтобы значения s.in_forum и s.in_topic выводились без сдвоенных записей,

 

Да ? А локэйшн забыл ? Чел сидит в форуме и топике. ТАК ? И отвечает в тот же форум и топик, ТАК ? Одинаково ? СДВОЕНО ??? Ну и не выводи - потеряешь ... А вот локэйшн при этом - разный SF,, & ST,, ;)

 

Добавлено в [mergetime]1076532405[/mergetime]

Короче - выход из положения предлагаю расписать подробно КОДЫ ЛОКЭЙШЕНА на вывод в просмотри он-лайн ...

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

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

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

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

Зарузка...

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

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.