Ротативни текстови анти-БОТ въпроси
При регистрация:



Вкарване на ротативните въпроси в АДМИН панела:



А ето какво ще получите в АДМИН майла на форума ако някой отговори неправилно на въпроса:



Както се вижда пише всичко ... IP, OS, Browser & Encoding

##############################################################
##
## МОД име: текстово потвърждаване при регистрация
## МОД описание: При регистрация, потребителя трябва да отговори на въпрос за да докаже че не е Спам БОТ.
## МОД версия: 1.0.7 bg
## МОД превод и настройки: Botzo - http://go-to-quebec.net/forum/
## МОД трудност: много лесно
## МОД време: 3 минути
##
## Файлове за промяна: 3
##
## includes/constants.php
## includes/usercp_register.php
## templates/subSilver/profile_add_body.tpl
##
## Файлове за добавяне:
##
## admin/admin_tc.php
## includes/functions_tc.php
## language/lang_bulgarian/lang_tc.php
## language/lang_bulgarian/email/textual_confirmation.tpl
## templates/subSilver/admin/textual_confirmation.tpl
##
## Свали нужните файлове: text.anti.spam.zip
##
##############################################################
##
## Преди да прибавите тоази МОД направете си ЗАДЪЛЖИТЕЛНО Back Up
## на всички файлове свързани с него.
##
##############################################################
#
#-----[ В SQL ДОБАВИ ]----------------------------------------
#
CREATE TABLE phpbb_textual_confirmation (
id INTEGER NOT NULL AUTO_INCREMENT,
question TEXT NOT NULL,
answers TEXT NOT NULL,
PRIMARY KEY (id)
);
INSERT INTO phpbb_textual_confirmation(question,answers) VALUES ('Are you human?', 'yes\nja\noui');
INSERT INTO phpbb_textual_confirmation(question,answers) VALUES ('Say hello', 'hello\nhi\nhallo');

#
#-----[ КОПИРАЙ ]---------------------------------------------
#
копирай - C:root\admin\admin_tc.php
във - ввв.сайт.com/fotum/admin/admin_tc.php
#
копирай - C:root\includes\functions_tc.php
във - ввв.сайт.com/fotum/includes/functions_tc.php
#
копирай - C:root\language\lang_bulgarian\lang_tc.php
във - ввв.сайт.com/fotum/language/lang_bulgarian/lang_tc.php
#
копирай - C:root\language\lang_bulgarian\email\textual_confirmation.tpl
във - ввв.сайт.com/fotum/language/lang_bulgarian/email/textual_confirmation.tpl
#
копирай - C:root\templates\subSilver\admin\textual_confirmation.tpl
във - ввв.сайт.com/fotum/templates/subSilver/admin/textual_confirmation.tpl
#
#
##############################################################
#
#-----[ ОТВОРИ ]----------------------------------------------
#
includes/constants.php

#
#-----[ НАМЕРИ ]----------------------------------------------
#
define('SMILIES_TABLE', $table_prefix.'smilies');

#
#-----[ СЛЕД ТОВА ДОБАВИ ]------------------------------------
#
define('TEXTUAL_CONFIRMATION_TABLE', $table_prefix.'textual_confirmation');

#
#-----[ ОТВОРИ ]----------------------------------------------
#
includes/usercp_register.php

#
#-----[ НАМЕРИ ]----------------------------------------------
#
$unhtml_specialchars_match = array('#>#', '#<#', '#"#', '#&#');

#
#-----[ ПРЕДИ ТОВА ДОБАВИ ]-----------------------------------
#
include($phpbb_root_path . 'includes/functions_tc.'.$phpEx);

#
#-----[ НАМЕРИ ]----------------------------------------------
#
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
}
}
#
#-----[ СЛЕД ТОВА ДОБАВИ ]------------------------------------
#
tc_hook_register();

#
#-----[ НАМЕРИ ]----------------------------------------------
#
$template->assign_vars(array(
'USERNAME' => isset($username) ? $username : '',
'CUR_PASSWORD' => isset($cur_password) ? $cur_password : '',

#
#-----[ ЗАМЕНИ СЪС ]------------------------------------------
#
tc_hook_template($mode, $template, $s_hidden_fields, $tc_question);
$template->assign_vars(array(
'TEXTUAL_CONFIRMATION_QUESTION' => isset($tc_question) ? $tc_question : '',
'L_TEXTUAL_CONFIRMATION_EXPLAIN' => isset($lang['tc_explain']) ? $lang['tc_explain'] : '',
'USERNAME' => isset($username) ? $username : '',
'CUR_PASSWORD' => isset($cur_password) ? $cur_password : '',

#
#-----[ ОТВОРИ ]----------------------------------------------
#
templates/subSilver/profile_add_body.tpl

#
#-----[ НАМЕРИ ]----------------------------------------------
#
<!-- END switch_confirm -->

#
#-----[ СЛЕД ТОВА ДОБАВИ ]------------------------------------
#
<!-- BEGIN switch_textual_confirm -->
<tr>
<td class="row1"><span class="gen">{TEXTUAL_CONFIRMATION_QUESTION} * </span><br /><span class="gensmall">{L_TEXTUAL_CONFIRMATION_EXPLAIN}</td>
<td class="row2"><input type="text" class="post" style="width: 200px" name="tc_answer" size="25" value="" /></td>
</tr>
<!-- END switch_textual_confirm -->

#
#
#-----[ ЗАПАЗЕТЕ И ЗАТВОРЕТЕ ВСИЧКИ ФАЙЛОВЕ ]-----------------
#
#

След инсталиране на МОД-а отидете в АДМИН панела за да си настроите въпросите.
МОД-а работи. Скрийншотовете са от моя форум.
Работещо ДЕМО: --> ТУК <--

Това е един от най-ефикасните МОД-ове. Ротативните въпроси може да са десетки или стотици.




/ Трябва да сте регистриран за да напишете коментар /
От: Darlin
23:31 06-06-2010
Може ли да се преработи за phpbb3?
От: Botzo
6:37 08-06-2010
Ми май не освен ако някой не го пренапише
От: emcuemnecu
8:06 08-06-2010
При мен кода работи, показват се въпросите обаче при грешно въведен отговор също позволява регистрация, което го обезмисля
От: Botzo
16:05 08-06-2010
Та аз всеки урок преди да го пусна го пробвам, не съм като други дето сам,о ги превеждат. И пробвам директно в моя форум. Та който иска нека дойде тук:

http://www.go-to-quebec.net/forum/profile.php?mode=register&agreed=true

и да пробва да се регистрира с грешен отговор ....

Просто явно урока не се изпълнава както трябва за да не работи ...
1