Борьба со спамом

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
AdmninsCluba
phpBB 1.2.1
Сообщения: 22
Стаж: 20 лет
Благодарил (а): 1 раз

Борьба со спамом

Сообщение AdmninsCluba »

Наткнулся в нете на такой пост.
Спамят весьма ограниченный набор слов, и поэтому 90% и больше спама легко отсечь простеньким кодом, размещенным в c самом начале скрипта постинга (например, в phpBB - posting.php)
PHP код:
$ar0 = array('sex', 'seks', 'porno', 'erotika',
'viagra', 'cialis',
'filmi4u');
$ar1 = $_REQUEST['message'];
$ar1 = preg_replace("![^a-z0-9а-я]!i", " ", $ar1);
$ar1 = preg_replace("![ ]{2,}!i", " ", $ar1);
$ar1 = explode(" ",$ar1);
$ar2 = array_intersect($ar1,$ar0);
if ($ar2) {
$_REQUEST['message'] = $_GET['message'] = $_POST['message'] = "";
}
Т.е. просто обнуляем переменную с сообщением, если в нем найдены нежелательные слова, а сам скрипт не позволит разместить пустое сообщение, а можно просто exit() .

Остается дополняться словарик $ar0, по которому банятся сообщения.

У меня работы по модерации значительно уменьшилось.
Я в PHP не силен, действительно данное действо сможет работать? И как правильно поставить в файл posting.php?

На Денвере сижу и ковыряю файл, результатов пока нет. Делаю, что-то неправильно... Смущает скобка - } . Закрытая есть а открытой скобки нет.
С уважением.
Аватара пользователя
crash
Former team member
Сообщения: 6517
Стаж: 22 года 2 месяца
Откуда: Бердск
Поблагодарили: 15 раз

Re: Борьба со спамом

Сообщение crash »

AdmninsCluba писал(а):а открытой скобки нет.
AdmninsCluba писал(а):if ($ar2) {
Как правильно задавать вопросы
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
AdmninsCluba
phpBB 1.2.1
Сообщения: 22
Стаж: 20 лет
Благодарил (а): 1 раз

Re: Борьба со спамом

Сообщение AdmninsCluba »

Теперь код выглядит так:
if ($ar2)
{
$ar0 = array('sex', 'порно', 'seks', 'porno', 'erotika',
'viagra', 'cialis',
'filmi4u');
$ar1 = $_REQUEST['message'];
$ar1 = preg_replace("![^a-z0-9а-я]!i", " ", $ar1);
$ar1 = preg_replace("![ ]{2,}!i", " ", $ar1);
$ar1 = explode(" ",$ar1);
$ar2 = array_intersect($ar1,$ar0);
if ($ar2) {
$_REQUEST['message'] = $_GET['message'] = $_POST['message'] = "";
}
Поставил. При открытии новой темы форум перестал отображаться. Выдает.
Parse error: syntax error, unexpected $end in Z:\home\***\www\posting.php on line 1493
Аватара пользователя
crash
Former team member
Сообщения: 6517
Стаж: 22 года 2 месяца
Откуда: Бердск
Поблагодарили: 15 раз

Re: Борьба со спамом

Сообщение crash »

AdmninsCluba
кого куда поставил? Я вам показал место где открывается кавычка.
Как правильно задавать вопросы
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
AdmninsCluba
phpBB 1.2.1
Сообщения: 22
Стаж: 20 лет
Благодарил (а): 1 раз

Re: Борьба со спамом

Сообщение AdmninsCluba »

crash писал(а):кого куда поставил? Я вам показал место где открывается кавычка.
Спасибо, понял.

Скажите, после какой строчки в файле posting.php - нужно вставить эту часть кода.
с уважением.
alexspb
phpBB 1.0.0
Сообщения: 4
Стаж: 17 лет 5 месяцев

Re: Борьба со спамом

Сообщение alexspb »

AdmninsCluba, мне, конечно, приятно, что скрипт вам пригодился, но стоит указывать источник - http://forum.searchengines.ru/showthrea ... ost4615276
AdmninsCluba
phpBB 1.2.1
Сообщения: 22
Стаж: 20 лет
Благодарил (а): 1 раз

Re: Борьба со спамом

Сообщение AdmninsCluba »

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

Что касается источника - это не мой форум, в чужой монастырь, со своим уставом...
И в приведенной теме, нет ответа на мои вопросы. А тут целый сайт поддержки именно phpBB 3.0.х
С уважением.
alexspb
phpBB 1.0.0
Сообщения: 4
Стаж: 17 лет 5 месяцев

Re: Борьба со спамом

Сообщение alexspb »

AdmninsCluba, код надо добавить в самом начале скрипта постинга posting.php
т.е. на следующей строчке после <?php

PS Насчет источника и чужого монастыря не понял... Или здесь запрещено размещать ссылки?
В интернете ставить ссылку на источник некоторые считают зазорным, но дело в том, как лично вы считаете.
AdmninsCluba
phpBB 1.2.1
Сообщения: 22
Стаж: 20 лет
Благодарил (а): 1 раз

Re: Борьба со спамом

Сообщение AdmninsCluba »

alexspb спасибо большое. Код встал и работает.

Такой вопрос, латинский текст код не дает размещать. Если словарик $ar0 дополняться кириллицей, то код не срабатывает. Есть возможность подружиться с русскими словами (словосочетаниями).
Еще раз, спасибо за помощь.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 17272
Стаж: 20 лет 4 месяца
Откуда: Красноярск
Благодарил (а): 632 раза
Поблагодарили: 2412 раз

Re: Борьба со спамом

Сообщение rxu »

Способ, конечно, имеет право на жизнь. Но с недостатками. Навскидку - их как минимум три:
Первый - устанете перечислять все варианты нехороших слов.
Второй - я пользователь форума, пишу жалобное сообщение наподобие "меня достали спаммеры с рекламой viagra", и получаю дырку от бублика вместо сообщения.
Третий - способ борется только с последствиями проникновения спам-ботов, но не с причиной (незащищенной или плохо защищенной регистрацией).
Изображение
AdmninsCluba
phpBB 1.2.1
Сообщения: 22
Стаж: 20 лет
Благодарил (а): 1 раз

Re: Борьба со спамом

Сообщение AdmninsCluba »

Согласен rxu, но идеального, в природе нет. Капча, сама по себе - зло. Я сам, не не с первого раза захожу на форум. А сложная капча, отпугнет посетителей, или не даст зайти.
Аватара пользователя
blaga_pro
phpBB 1.2.0
Сообщения: 15
Стаж: 18 лет 3 месяца

Re: Борьба со спамом

Сообщение blaga_pro »

Есть много методов кроме как капча. пошарьте по форуму...
Аватара пользователя
Юлия
phpBB 1.4.2
Сообщения: 69
Стаж: 17 лет 5 месяцев
Откуда: Астрахань
Благодарил (а): 10 раз

Re: Борьба со спамом

Сообщение Юлия »

Получается что со спамом бороться бесполезно... :cry: 100% способа нет
alexspb
phpBB 1.0.0
Сообщения: 4
Стаж: 17 лет 5 месяцев

Re: Борьба со спамом

Сообщение alexspb »

Если словарик $ar0 дополняться кириллицей, то код не срабатывает. Есть возможность подружиться с русскими словами (словосочетаниями).
AdmninsCluba, проблема в кодировке - по умолчанию phpBB 3 - UTF-8
Соответственно нужно, что сам файлик был в этой кодировке и писать слова в нем в этой кодировке.
НО: ссылки ставятся ради ограниченного количества слов и в самих ссылках как правило эти слова присутствуют (и именно латиницей пока)
Способ, конечно, имеет право на жизнь. Но с недостатками.
rxu, был бы лучший в запасе, предложил бы лучший.
Для меня сейчас главное, что он сильно мне как модератору облегчил жизнь; согласитесь, что если способ позволяет отсечь 90% спама, то это уже очень неплохо. Для спамеров ведь тоже важно сократить издержки размещения, а такие способы на внесенные слова в список непробиваемые.

У форумов вообще один, но большой недостаток - их спамят (несмотря на то, что эффект от этого крайне низкий - ну разве на низкочастотники чего-то получить). И что, рекомендуете вообще их не вести?
Получается что со спамом бороться бесполезно... :cry: 100% способа нет
Юлия, отсутствие 100% гарантии не повод отказываться от форумов.
Аватара пользователя
Rayden
Former team member
Сообщения: 3739
Стаж: 21 год 2 месяца
Поблагодарили: 44 раза

Re: Борьба со спамом

Сообщение Rayden »

"В СССР секса нет!"(с)
Банить всех, кто о сексе заговорил :lol:
А еще предлагаю добавить в список слова "извени" и "превед".
Юлия писал(а):Получается что со спамом бороться бесполезно... :cry: 100% способа нет
Есть. Стопроцентный, и главное бесшумный. "Винторез" называется:
Изображение

Главное спамера отследить, а потом он спамить прекращает навсегда. Летальное средство.
AdmninsCluba писал(а):Согласен rxu, но идеального, в природе нет.
В природе масса идеальных вещей. А ты перед тем как изобретать велосипед, посмотри по сторонам и изучи, что до тебя придумали.
rxu писал(а):Способ, конечно, имеет право на жизнь. Но...
Вот это скромное "но..." перечеркивает смысл сказанного до него :lol:
phpBB2 FAQ
phpBB3 FAQ

Вернуться в «Для авторов (phpBB 3.0.x)»