Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Гость RSS-Bot

Важное с Sysman.Ru: Удалить логи поискового робота Yahoo

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

Гость RSS-Bot

Song:

Симтомы: не смотря на то, что в админ-центре форума предусмотрено удаление логов поисковых роботов, тем не менее удаление робота Yahoo не представляется возможным.

 

Причина: дело в том, что в названии этого робота есть обязательно восклицательный знак - Yahoo!

При операции удалении логов этого бота, парсер форума сначала превращает знак восклицация в юникод и удаление робота идёт уже совсем по другому запросу чем должно. В результе ничего не удаляется.

 

Исправление:

Ниже приведены исправления для форумов версий:

  • 1.x (чуть ниже)
  • 2.1.x

Поделиться сообщением


Ссылка на сообщение
Гость RSS-Bot

Song:

Симтомы: не смотря на то, что в админ-центре форума предусмотрено удаление логов поисковых роботов, тем не менее удаление робота Yahoo не представляется возможным.

 

Причина: дело в том, что в названии этого робота есть обязательно восклицательный знак - Yahoo!

При операции удалении логов этого бота, парсер форума сначала превращает знак восклицация в юникод и удаление робота идёт уже совсем по другому запросу чем должно. В результе ничего не удаляется.

 

Исправление:

Ниже приведены исправления для форумов версий:

  • 1.x (чуть ниже)
  • 2.1.x

Поделиться сообщением


Ссылка на сообщение
Гость RSS-Bot

Song: Исправление для 1.x:

 

Добавьте выделенную часть в двух нижеприведённых случаях:

Цитата
    [b]function[/b] view()    {        [b]global[/b] [color=#048284]$IN[/color], [color=#048284]$INFO[/color], [color=#048284]$DB[/color], [color=#048284]$SKIN[/color], [color=#048284]$ADMIN[/color], [color=#048284]$std[/color], [color=#048284]$MEMBER[/color], [color=#048284]$GROUP[/color], [color=#048284]$HTTP_GET_VARS[/color];

Цитата (ad_spiderlogs.php)
    [b]function[/b] remove()    {        [b]global[/b] [color=#048284]$IN[/color], [color=#048284]$INFO[/color], [color=#048284]$DB[/color], [color=#048284]$SKIN[/color], [color=#048284]$ADMIN[/color], [color=#048284]$std[/color], [color=#048284]$MEMBER[/color], [color=#048284]$GROUP[/color], [color=#048284]$HTTP_GET_VARS[/color];

 

Исправление просмотра действия ботов:

Найдите:

Цитата (ad_spiderlogs.php)
                [color=#048284]$start[/color] = [color=#048284]$IN[/color]['st'] ? [color=#048284]$IN[/color]['st'] : [color=navy]0[/color];                [color=#048284]$ADMIN[/color]->page_detail = "Просмотр всех действий поискового двигателя";        [color=#048284]$ADMIN[/color]->page_title  = "Управление логами поискового двигателя";                [color=#048284]$botty[/color] = urldecode([color=#048284]$IN[/color]['bid']);            [b]if[/b] ([color=#048284]$IN[/color]['search_string'] == "")        {            [color=#048284]$DB[/color]->query("SELECT COUNT(sid) as count FROM ibf_spider_logs WHERE bot='$botty'");                        [color=#048284]$row[/color] = [color=#048284]$DB[/color]->fetch_row();                        [color=#048284]$row_count[/color] = [color=#048284]$row[/color]['count'];                        [color=#048284]$query[/color] = "&act=spiderlog&bid={$IN['bid']}&code=view";                        [color=#048284]$DB[/color]->query("SELECT * FROM ibf_spider_logs WHERE bot='$botty' ORDER BY entry_date DESC LIMIT $start, 20");                    }

Замените на:

                [color=#048284]$start[/color] = [color=#048284]$IN[/color]['st'] ? [color=#048284]$IN[/color]['st'] : [color=navy]0[/color];                [color=#048284]$ADMIN[/color]->page_detail = "Просмотр всех действий поискового двигателя";        [color=#048284]$ADMIN[/color]->page_title  = "Управление логами поискового двигателя";                [color=#048284]$botty[/color] = urldecode([color=#048284]$HTTP_GET_VARS[/color]['bid']);            [b]if[/b] ([color=#048284]$IN[/color]['search_string'] == "")        {            [color=#048284]$DB[/color]->query("SELECT COUNT(sid) as count FROM ibf_spider_logs WHERE bot='".addslashes([color=#048284]$botty[/color])."'");                        [color=#048284]$row[/color] = [color=#048284]$DB[/color]->fetch_row();                        [color=#048284]$row_count[/color] = [color=#048284]$row[/color]['count'];                        [color=#048284]$query[/color] = "&act=spiderlog&bid={$IN['bid']}&code=view";                        [color=#048284]$DB[/color]->query("SELECT * FROM ibf_spider_logs WHERE bot='".addslashes([color=#048284]$botty[/color])."' ORDER BY entry_date DESC LIMIT $start, 20");                    }

 

 

Исправление удаления действий ботов:

Найдите:

Цитата (ad_spiderlogs.php)
        [color=#048284]$botty[/color] = urldecode([color=#048284]$IN[/color]['bid']);                [color=#048284]$DB[/color]->query("DELETE FROM ibf_spider_logs WHERE bot='$botty'");

Замените на:

        [color=#048284]$botty[/color] = urldecode([color=#048284]$HTTP_GET_VARS[/color]['bid']);                [color=#048284]$DB[/color]->query("DELETE FROM ibf_spider_logs WHERE bot='".addslashes([color=#048284]$botty[/color])."'");

Поделиться сообщением


Ссылка на сообщение
Гость RSS-Bot

Song: Исправление для 2.1.x:

 

Исправление просмотра действий ботов:

Цитата (sources/action_admin/spiderlogs.php)
    [b]function[/b] view()    {        [color=#048284]$start[/color] = [color=#048284]$this[/color]->ipsclass->input['st'] ? [color=#048284]$this[/color]->ipsclass->input['st'] : [color=navy]0[/color];                        [color=#048284]$this[/color]->ipsclass->admin->page_detail = "Просмотр всех действий поисковыми ботами";                [color=#048284]$this[/color]->ipsclass->admin->page_title  = "Менеджер поисковых ботов";                [color=#048284]$botty[/color] = urldecode([color=#048284]$this[/color]->ipsclass->input['bid']);            [b]if[/b] ([color=#048284]$this[/color]->ipsclass->input['search_string'] == "")        {            [color=#048284]$this[/color]->ipsclass->DB->simple_construct( [b]array[/b]( 'select' => 'COUNT(sid) as count', 'from' => 'spider_logs', 'where' => "bot='$botty'" ) );            [color=#048284]$this[/color]->ipsclass->DB->simple_exec();                    [color=#048284]$row[/color] = [color=#048284]$this[/color]->ipsclass->DB->fetch_row();                        [color=#048284]$row_count[/color] = [color=#048284]$row[/color]['count'];                        [color=#048284]$query[/color] = "&{$this->ipsclass->form_code}&bid={$this->ipsclass->input['bid']}&code=view";                        [color=#048284]$this[/color]->ipsclass->DB->simple_construct( [b]array[/b]( 'select' => '*',                                          'from'   => 'spider_logs',                                          'where'  => "bot='$botty'",                                          'order'  => 'entry_date DESC',                                          'limit'  => [b]array[/b]( [color=#048284]$start[/color], [color=navy]20[/color] ) ) );            [color=#048284]$this[/color]->ipsclass->DB->simple_exec();        }

Замените на:

    [b]function[/b] view()    {        [color=#048284]$start[/color] = [color=#048284]$this[/color]->ipsclass->input['st'] ? [color=#048284]$this[/color]->ipsclass->input['st'] : [color=navy]0[/color];                        [color=#048284]$this[/color]->ipsclass->admin->page_detail = "Просмотр всех действий поисковыми ботами";                [color=#048284]$this[/color]->ipsclass->admin->page_title  = "Менеджер поисковых ботов";                [color=#048284]$botty[/color] = urldecode([color=#048284]$_GET[/color]['bid']);            [b]if[/b] ([color=#048284]$this[/color]->ipsclass->input['search_string'] == "")        {            [color=#048284]$this[/color]->ipsclass->DB->simple_construct( [b]array[/b]( 'select' => 'COUNT(sid) as count', 'from' => 'spider_logs', 'where' => "bot='".addslashes([color=#048284]$botty[/color])."'" ) );            [color=#048284]$this[/color]->ipsclass->DB->simple_exec();                    [color=#048284]$row[/color] = [color=#048284]$this[/color]->ipsclass->DB->fetch_row();                        [color=#048284]$row_count[/color] = [color=#048284]$row[/color]['count'];                        [color=#048284]$query[/color] = "&{$this->ipsclass->form_code}&bid={$this->ipsclass->input['bid']}&code=view";                        [color=#048284]$this[/color]->ipsclass->DB->simple_construct( [b]array[/b]( 'select' => '*',                                          'from'   => 'spider_logs',                                          'where'  => "bot='".addslashes([color=#048284]$botty[/color])."'",                                          'order'  => 'entry_date DESC',                                          'limit'  => [b]array[/b]( [color=#048284]$start[/color], [color=navy]20[/color] ) ) );            [color=#048284]$this[/color]->ipsclass->DB->simple_exec();        }

 

 

Исправление удаления действий ботов:

Найдите:

Цитата (sources/action_admin/spiderlogs.php)
    [color=green]//-----------------------------------------[/color]    [color=green]// Remove archived files[/color]    [color=green]//-----------------------------------------[/color]        [b]function[/b] remove()    {        [b]if[/b] ([color=#048284]$this[/color]->ipsclass->input['bid'] == "")        {                        [color=#048284]$this[/color]->ipsclass->admin->error("Вы не выбрали бота, которого хотите удалить!");        }                [color=#048284]$botty[/color] = urldecode([color=#048284]$this[/color]->ipsclass->input['bid']);                [color=#048284]$this[/color]->ipsclass->DB->simple_exec_query( [b]array[/b]( 'delete' => 'spider_logs', 'where' => "bot='$botty'" ) );

 

Замените на:

    [color=green]//-----------------------------------------[/color]    [color=green]// Remove archived files[/color]    [color=green]//-----------------------------------------[/color]        [b]function[/b] remove()    {        [b]if[/b] ([color=#048284]$this[/color]->ipsclass->input['bid'] == "")        {                        [color=#048284]$this[/color]->ipsclass->admin->error("Вы не выбрали бота, которого хотите удалить!");        }                [color=#048284]$botty[/color] = urldecode([color=#048284]$_GET[/color]['bid']);                [color=#048284]$this[/color]->ipsclass->DB->simple_exec_query( [b]array[/b]( 'delete' => 'spider_logs', 'where' => "bot='".addslashes([color=#048284]$botty[/color])."'" ) );

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

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