Русское сообщество fluxbb

Быстрый лёгкий надёжный форумный движок

Вы не вошли.

Объявление

Вы можете внести свой вклад в содержание сайта. Жертвователи попадут в почетную группу "Спонсоры". Поддержать сайт.

#1 2008-07-24 23:03:27

bozhkov
Гость

Антиспам мод - где взять?

Собсно сабж??
Подскажите плиз, где можно скачать антиспам мод?

#2 2008-07-25 09:15:26

xN
Гость

Re: Антиспам мод - где взять?

1)punres.org
2)написать самому
3)Вроде в сборке что-то было насчет антиспама.

#3 2008-07-25 22:22:12

asking
Гость

Re: Антиспам мод - где взять?

Вы знаете, я недавно скачал вот это. Цифры и буквы формируются из отдельных сегментов, т.е. это не традиционный рисунок с искажениями )))

#4 2008-07-26 08:03:35

hcs
Гость

Re: Антиспам мод - где взять?

хахаха smile
это выглядит вот так:
http://www.frech.ch/online-bookmarks/forum/register.php
оригинально. мне нравится, что отсутсвуют изображения.

#5 2008-07-26 09:01:55

bozhkov
Гость

Re: Антиспам мод - где взять?

Спасибо, но мне нужно не это. Мне посоветовали использовать антиспам мод для организации премодерируемого форума

#6 2008-07-26 21:03:06

asking
Гость

Re: Антиспам мод - где взять?

hcs пишет:

оригинально. мне нравится, что отсутсвуют изображения.

Возможно, визуально это не очень эстетично выглядит (я пока не понял где менять размер и предполагаю, что это технически невозможно), но в том случае если посетитель отключил отображение изображений, это очень хороший вариант, как мне кажется.

#7 2008-08-02 01:27:05

Dark Wizard
Гость

Re: Антиспам мод - где взять?

Тест на знание правил:

#
#
#   Mod title       :   Вопросы на знание правил форума :) 
#   Mod version     :   1.0
#   Works on PunBB  :   1.2.*
#   Release date    :   21 мая 2007
#   Author          :   [email protected]
#   Affected files  :   register.php, lang/Russian/register.php
#   Note            :   для русской версии
#
#-------------[ register.php ]-----------
#
#
#-------------[ 1. Найти (строка ~60)]-----
#
// User pressed the cancel button
if (isset($_GET['cancel']))
    redirect('index.php', $lang_register['Reg cancel redirect']);


else if ($pun_config['o_rules'] == '1' && !isset($_GET['agree']) && !isset($_POST['form_sent']))
{
    $page_title = pun_htmlspecialchars($pun_config['o_board_title']).' / '.$lang_register['Register'];
    require PUN_ROOT.'header.php';

?>
<div class="blockform">
    <h2><span><?php echo $lang_register['Forum rules'] ?></span></h2>
    <div class="box">
        <form method="get" action="register.php">
            <div class="inform">
                <fieldset>
                    <legend><?php echo $lang_register['Rules legend'] ?></legend>
                    <div class="infldset">
                        <p><?php echo $pun_config['o_rules_message'] ?></p>
                    </div>
                </fieldset>
            </div>
            <p><input type="submit" name="agree" value="<?php echo $lang_register['Agree'] ?>" /><input type="submit" name="cancel" value="<?php echo $lang_register['Cancel'] ?>" /></p>
        </form>
    </div>
</div>

#
#-------------[ 2. Заменить на ]------------
#

// User pressed the cancel button
if (isset($_POST['cancel']))
    redirect('index.php', $lang_register['Reg cancel redirect']);


else if ($pun_config['o_rules'] == '1' && !isset($_POST['agree']) && !isset($_POST['form_sent']))
{
    $page_title = pun_htmlspecialchars($pun_config['o_board_title']).' / '.$lang_register['Register'];
    require PUN_ROOT.'header.php';

?>
<div class="blockform">
    <h2><span><?php echo $lang_register['Forum rules'] ?></span></h2>
    <div class="box">
        <form method="post" action="register.php">
            <div class="inform"><fieldset>
                <legend><?php echo $lang_register['RulesQuizHead'] ?></legend>
                    <div class="infldset">
<?php

    function print_one_quiz( $idx, $lng )
    {
        $rdata = array_rand( array(1, 2, 3), 3 );
        echo '<dl><dt style="font-weight:bold">'.$lng[ 'RulesQuiz_'.$idx.'_0' ].":</dt><dd style='margin-left:5em;margin-top:1em;'>\n";
        for( $i = 0; $i < 3; $i++ )
        {
            echo '<input name="'.'RulesQuiz_'.$idx.'" type="radio" value="'.($rdata[$i]+1).'"/>';
            echo '&nbsp;'.$lng[ 'RulesQuiz_'.$idx.'_'.($rdata[$i]+1) ];
            echo "<br/>\n";
        }
        echo "</dd></dl>\n";
    }

    $qarray = array();
    for( $i = 0; $i < $lang_register[ 'RulesQuizMax' ]; $i++ )
    {
        $qarray[ $i ] = $i + 1;
    }
    $ridx = array_rand( $qarray, 2 );

    print_one_quiz( $ridx[0]+1, $lang_register );
    print_one_quiz( $ridx[1]+1, $lang_register );

?>
                    </div>
                </fieldset>
            </div>
            <p><input type="submit" name="agree" value="<?php echo $lang_register['Agree'] ?>" /><input type="submit" name="cancel" value="<?php echo $lang_register['Cancel'] ?>" /></p>
        </form>
    </div>
</div>
#
#-------------[ 3. Найти (строка ~298)]-----
#

$page_title = pun_htmlspecialchars($pun_config['o_board_title']).' / '.$lang_register['Register'];

#
#-------------[ 4. Добавить ПЕРЕД ]-----
#
    $answers = 0;
    for( $i = 1; $i <= $lang_register[ 'RulesQuizMax' ]; $i++ )
    {
        if( isset( $_POST[ 'RulesQuiz_'.$i ] ) )
        {
            if( $_POST[ 'RulesQuiz_'.$i ] != '1' )
            {
                message( $lang_register[ 'QuizAnswerInvalid' ] );
            }
            else
            {
                $answers++;
            }
        }
    }
    if( $answers != 2 )
    {
        message( $lang_register[ 'QuizAnswerInvalid' ] );
    }

#
#-------------[ lang/Russian/register.php ]----------
#
#-------------[ 5. Добавить (пример) ]-----
#
/*
    RulesQuiz_XX_0 - сам вопрос
    RulesQuiz_XX_1 - правильный ответ
*/
'RulesQuizHead'             =>  'Контрольные вопросы',
'RulesQuizMax'              =>  '6',
'QuizAnswerInvalid'         => '<b style="color:#FF0000">Неправильные ответы на контрольные вопросы.</b>',

'RulesQuiz_1_0'             => 'Перед регистрацией на форуме необходимо',
'RulesQuiz_1_1'             => 'Ознакомиться с правилами форума',
'RulesQuiz_1_2'             => 'Перечислить на счёт админстрации 15 рублей',
'RulesQuiz_1_3'             => 'Читать форум в течении недели',

'RulesQuiz_2_0'             => 'Оскорбления на этом форуме',
'RulesQuiz_2_1'             => 'Наказываются',
'RulesQuiz_2_2'             => 'Поощряются',
'RulesQuiz_2_3'             => 'Игнорируются',

'RulesQuiz_3_0'             => 'Перед созданием новой темы следует',
'RulesQuiz_3_1'             => 'Убедиться в том, что тема соответствует разделу',
'RulesQuiz_3_2'             => 'Спросить разрешения у администрации',
'RulesQuiz_3_3'             => 'Спросить разрешения у участников форума',

'RulesQuiz_4_0'             => 'Администрация сделала вам замечание, но соответствующего пункта в правилах вы не нашли. Вам следует',
'RulesQuiz_4_1'             => 'Принять к сведению',
'RulesQuiz_4_2'             => 'Громко обидеться',
'RulesQuiz_4_3'             => 'Публично покаяться и пообещать исправиться',

'RulesQuiz_5_0'             => 'Вы видите сообщение, явно нарушающее правила форума. Вам следует',
'RulesQuiz_5_1'             => 'Нажать на ссылку «сообщить модератору»',
'RulesQuiz_5_2'             => 'Создать новую тему с обсуждением данного сообщения',
'RulesQuiz_5_3'             => 'Ответить на него и указать автору на недопустимое поведение',

'RulesQuiz_6_0'             => 'Вы хотите ознакомить участников форума с текстом объёмом в 10 страниц. Вам следует',
'RulesQuiz_6_1'             => 'Разместить в сообщении ссылку на этот текст',
'RulesQuiz_6_2'             => 'Разместить в сообщении текст полностью',
'RulesQuiz_6_3'             => 'Попросить учаcтников форума связаться с вами для получения текста',

#
#-------------[ 6. Сохранить ]----------------
#

Чтобы работало, нужно включить правила в админке!

#8 2008-08-02 16:23:34

Delico
Гость

Re: Антиспам мод - где взять?

Dark Wizard
Да это не антиспам мод, похоже на мод антилюд, ставить такое не самая удачная идея smile

Поэтому вопрос, подскажите пжст банальный парсер ссылок? (До N сообщений нельзя писать посты с ссылками.)

Редактировался Delico (2008-08-02 16:24:53)

#9 2008-08-02 17:58:38

hcs
Гость

Re: Антиспам мод - где взять?

Кстати это хороший подход. Большинство спамеров - боты, ибо спамить вручную верх долбоебизмаидиотизма. Пара вопросов и нестандартные ответы отсеют ботов не хуже(а то и лучше) чем графическая каптча. Это первый эшелон защиты. Второй  -отсеивание сообщений со ссылками. Но тут под одну гребенку легко зачесать любого честного гражданина и в мыслях не имеющего никакого спама (проверено). И даже количество ссылок в его сообщении не будет показателем спама. Например тут на форуме есть антиспам (он есть кстати и в сборке), он забанил кучу людей дающих ссылки на свои форумы, в качестве примера своих проблем. Т.е. он сработал плохо. Люди оставались недовольны. Поставь себя на их место.
Борьба со спамом на форуме - это комлексные меры включающие в том числе отсеивание ботов на этапе регистрации, а не только тупой бан или премод за ссылки.

#10 2008-08-02 19:20:56

Delico
Гость

Re: Антиспам мод - где взять?

hcs
Да я согласен с недостатком этой резалки, и встречался (кстати спасибо, нашёл кусок кода в сборке) однако и тесты на знание правил (согласитесь которые никто кроме админа не читает), это вообще крайность.

#11 2008-08-03 04:50:51

hcs
Гость

Re: Антиспам мод - где взять?

Delico
тесты не обязательно на знание правил, это тесты на логику

#12 2008-08-04 14:36:01

Freeman
Гость

Re: Антиспам мод - где взять?

Угу, только хотел написать, что такие тесты - против блондинок. smile

Подвал доски

Под управлением FluxBB. Хостинг Hostens