Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

[BETA]Find_Spammer - Поиск спаммеров

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
BenDeen
phpBB 1.2.0
Сообщения: 16
Стаж: 10 лет
Благодарил (а): 21 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение BenDeen »

A_Karetnikov писал(а):Во время удаления спамеров загружается страница с ошибками:
У меня тоже при удалении видны вот такие строки:
Изображение
где надо подшаманить? :?:
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение Sheer »

BenDeen
Сообщения об ошибках следует размещать в виде текста, обрамленного тегами [code], а не виде скриншота, размещенного непонятно где.

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

Missing argument 8 for user_ban()
говорит о том, что при вызове функцииuser_ban() не указан восьмой аргумент, передаваемый в функцию.
Но дело в том, что в стандарте в функцию user_ban() передается только семь аргументов

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

function user_ban($mode, $ban, $ban_len, $ban_len_other, $ban_exclude, $ban_reason, $ban_give_reason = '')
Ваша версия функции модифицирована каким-то модом.
Приведите здесь текст из файла ./includes/functions_user.php со строки 662 + 10 строк
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
BenDeen
phpBB 1.2.0
Сообщения: 16
Стаж: 10 лет
Благодарил (а): 21 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение BenDeen »

Sheer, у меня действительно установлен мод Ban List Mod. И получается, что у меня передается в функцию user_ban() восемь аргументов, вот:

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

function user_ban($mode, $ban, $ban_len, $ban_len_other, $ban_exclude, $ban_reason, $ban_give_reason = '', $ban_banner)
Sheer писал(а):Приведите здесь текст из файла ./includes/functions_user.php со строки 662 + 10 строк
Вот строки, хотя они уже наверное и не нужны:

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

function user_ban($mode, $ban, $ban_len, $ban_len_other, $ban_exclude, $ban_reason, $ban_give_reason = '', $ban_banner)
{
	global $db, $user, $auth, $cache;

	// Delete stale bans
	$sql = 'DELETE FROM ' . BANLIST_TABLE . '
		WHERE ban_end < ' . time() . '
			AND ban_end <> 0';
	$db->sql_query($sql);

	$ban_list = (!is_array($ban)) ? array_unique(explode("\n", $ban)) : $ban;
	$ban_list_log = implode(', ', $ban_list);

	$current_time = time();
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение Sheer »

Замените

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

function user_ban($mode, $ban, $ban_len, $ban_len_other, $ban_exclude, $ban_reason, $ban_give_reason = '', $ban_banner)
на

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

function user_ban($mode, $ban, $ban_len, $ban_len_other, $ban_exclude, $ban_reason, $ban_give_reason = '', $ban_banner = 0)
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
BenDeen
phpBB 1.2.0
Сообщения: 16
Стаж: 10 лет
Благодарил (а): 21 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение BenDeen »

Sheer, а Ban List Mod работать нормально будет?

Добавлено спустя 1 час 31 минуту 31 секунду:
BenDeen писал(а):Sheer, а Ban List Mod работать нормально будет?
Проверил, вроде все работает, как надо! ;)
Премного благодарен!!!
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 13 лет 11 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение HAMMER663 »

Вот странности какие. Запускаю поиск, Мне находит спамеров, нажимаю удалить и мне выскакивает ошибка:

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

SQL ERROR [ mysql4 ]
[]
SQL
SELECT count(*) AS total FROM for_kg_users WHERE user_type != 2 AND user_type != 3 AND user_regdate > 1401294956
BACKTRACE
FILE: [ROOT]/includes/db/mysql.php
LINE: 193
CALL: dbal->sql_error()
FILE: [ROOT]/isspammer.php
LINE: 168
CALL: dbal_mysql->sql_query()
То есть я так понял запрос подсчитывает сколько всего спамеров. И да. Пагинация при этом на странице с обнаруженными пользователями не работает. И спамеры не удаляются..
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение Sheer »

И впрямь странно... ничего криминального в запросе нет. На PMA у мну отрабатывает запросто...
Разве что count(*) - это не гут
Попробуй так

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

SELECT COUNT(user_id) AS total FROM for_kg_users WHERE user_type < 2 AND user_regdate > 1401294956
Добавлено спустя 1 минуту 51 секунду:
или

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

SELECT COUNT(user_id) AS total FROM for_kg_users WHERE user_type NOT IN(2,3) AND user_regdate > 1401294956
Добавлено спустя 3 минуты 32 секунды:
HAMMER663 писал(а):запрос подсчитывает сколько всего спамеров
Не, сколько всего юзеров не ботов и не основателей с датой регистрации позднее указанной.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 13 лет 11 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение HAMMER663 »

Sheer не помогло. Скорее всего проблема где-то еще.. Если закрыть глаза на эту ошибку, то не удаляются спамеры при нажатии на кнопку удаления. Просто белый экран.. В общем там все запущено и логи сервера я получить пока не смог...
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение Sheer »

HAMMER663
А в PMA запрос срабатывает?

Добавлено спустя 33 секунды:
Может табличку починить/оптимизировать?
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 13 лет 11 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение HAMMER663 »

Sheer запрос проходит. Оптимизация и восстановление не помогает.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 13 лет 11 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение HAMMER663 »

Спасибо Sheer за помощь с возникшей ситуацией. Все дело оказалось в модуле phpBB Arcade.
Костыль такой
isspammer.php
Найти

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

user_delete('remove', $users[$i]);
Заменить на

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

//user_delete('remove', $users[$i]);
user_delete('remove', $users[$i], false, true);
includes/functions_user.php
Найти

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

function user_delete($mode, $user_id, $post_username = false)
Заменить на

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

//function user_delete($mode, $user_id, $post_username = false)
function user_delete($mode, $user_id, $post_username = false, $scip = false)
Найти

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

	// phpBB Arcade Start
Добавить после

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

 if (!$scip)
 {	
Найти

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

	// phpBB Arcade End
Добавить перед И теперь спамеры будут удаляться :)
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 8 месяцев
Откуда: Москва
Благодарил (а): 293 раза
Поблагодарили: 6 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение Erlang »

Sheer
а для 3.1.х планируется?
С уважением,
Сергей
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение Sheer »

Была мысль...
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Erlang
phpBB 2.0.15
Сообщения: 1033
Стаж: 19 лет 8 месяцев
Откуда: Москва
Благодарил (а): 293 раза
Поблагодарили: 6 раз
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение Erlang »

Sheer
отставить сомнения!
:)

Добавлено спустя 3 минуты 27 секунд:
Вещь очень нужная и полезная. Спасибо!
На перспективу предложу:
дополнительно сделать возможность поиска с определённой даты по определённую дату.
Заметил что иногда многостраничный поиск сбоит при переходе на следующую страницу.
Возможно из-за сервера.

Добавлено спустя 3 минуты 31 секунду:
Ещё предложение:
обычно спамеры регистрируются раз и не приходят, видимо мину закладывают.
аналогичная ситуация с не подтверждающими регистрацию по почте.
Может стоит добавить возможность и с этими тут-же (в рамках этого дополнения) расправляться не щадно?
Это просто предложение.
С уважением,
Сергей
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: [BETA]Find_Spammer - Поиск спаммеров

Сообщение Sheer »

Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Закрыто

Вернуться в «Бета-версии модов для phpBB 3.0.x»