Я считаю, что самый эффективный способ борьбы со спамерами - это использование трех модов:
1. Запрет на регистрацию с урл.
2. Запрет на создание сообщения с определенным текстом. На данный момент 90% спам сообщений содержат одинковые характерные фразы. В моем случае это фразы про пирамиды, армию, рекламы в форумах, оптимизация, каталоги прокси, недвижимость и др. (не так много, но уж очень часто повторяются)
3. Удаление мертвых пользователей не оставивших ниодного сообщения и не заходивших на форум более 3-х месяцев. Так удалятся все логины без урл оставленные ботами + реальные, но совершенно неактивные пользователи.
В итоге останется менее 3% всего спама, но тут уже надо ручками...
Первый сделал без проблем, а вот со вторым никак не могу разобраться. За третий еще не приступал. Неужели никто не ставил себе второй мод?
Xpert, как должно быть?
Так (первый вариант):
Код: Выделить всё
// This function check message for SPAM
function ad_cerber($message)
{
global $ad_minpost, $ad_replace, $ad_list;
global $userdata,$phpEx, $phpbb_root_path,$user_ip,$db,$board_config;
if( $userdata['user_level'] == ADMIN ) return $message;
include($phpbb_root_path . 'includes/adcerber_config.'.$phpEx);
или так (второй вариант):
Код: Выделить всё
// This function check message for SPAM
function ad_cerber($message)
{
global $ad_minpost, $ad_replace, $ad_list, $userdata,$phpEx, $phpbb_root_path,$user_ip,$db,$board_config;
if( $userdata['user_level'] == ADMIN ) return $message;
include($phpbb_root_path . 'includes/adcerber_config.'.$phpEx);
я пробовал и так и так.... все равно меня банит.
В adcerber_config.php такие строки:
Код: Выделить всё
<?php
$ad_minpost=0; // До этого числа баним, свыше только информируем Админа и забиваем спам
$ad_replace='[SPAM]';
$ad_list=array('откос от армии');
?>
Я создаю топик с текстом "откос от армии" и меня банят... А банить не должно! а то так все подряд айпишки без толку перебанит...