Ребята, нужна помощь в создании хака "Тестирование перед регистрацией".
Т.е. смысл хака в том, чтобы пользователь сначала прошел тест, а уже если его знания позволяют, то тогда уже разрешить ему продолжить регистрацию.
Я уже делал у себя на форуме, когда стояла версия 3.0.7
Счас хотел бы сделать нормальный полноценный хак. Чтобы продуктом был, фразированный =)
Вот и нужна Ваша помощь.
Завтра, послезавтра напишу что было в той версии, что я сам когда то делал...
================
Последняя версия хака Вложение 3676
Сорри, продолжение оффтопа. zМарковь, ну чтож поделаешь =) Раз коты. У меня и жена - "Кися", и я для нее тоже =)))
Вот приаттачиваю файлы от версии 3.0.7... То что я делал. Просьба не ругать за кривой код =) Сделал как смог. Работало по крайней мере =)
В register.php начиначется где то со строки 820-й или где то там.
Шаблоны тоже приаттачил.
Дамп базы мускульной к сожалению не сохранился. Но я думаю и из кода можно будет понять как она выглядела...
Чего хотел был вообще в этот хак:
Управление через админку:
отключение/включение, редактирование вопросов, добавление, удаление. изменений опций...
возможность использовать изображения в качве вариантов ответов... (это уже в идеале) =)
Ну пока вроде вот все что на ум пришло...
Забыл добавить. Добавлял еще 2 фразы.
error_test_not_completed - что то вроде того, что ответы есть не на все вопросы.
error_not_allowed - регистрация не разрешена.
Последний раз редактировалось PGP; 08.03.2006 в 00:30..
PGP,
ты не мог бы в другой кодировке сохранить файл пхп?
там коменты твои непонятно в какой кодировке, разные уже перепробовал, все равно кракозяблы а коменты пригодились бы...
и было бы неплохо так же и структуру таблицы =))
=======
потом..., каким образом все это работало?
т.е.:
как добавлялись вопросы/ответы в базу?
сам вбивал в таблицу или делал это через дополнительные настройки?
// Проверка на согласие с правилами форума
if (empty($agree))
{
eval(print_standard_error('register_not_agreed'));
}
// Проверка на то, включена ли регистрация на форуме вообще
if (!$vboptions['allowregistration'])
{
eval(print_standard_error('error_noregister'));
}
// Проверка на уже зарегистрированного пользовтеля
if ($bbuserinfo['userid'] != 0 AND !$vboptions['allowmultiregs'])
{
eval(print_standard_error('error_alreadyregistered'));
}
$questions = $DB_site->query("(SELECT * FROM pgp_register_test WHERE category=1 ORDER BY RAND() LIMIT 5) UNION (SELECT * FROM pgp_register_test WHERE category=2 ORDER BY RAND() LIMIT 5) ORDER BY RAND();");
// ############################### end TEST ###############################
// @@@@@@@@@@@@@@@@@@ PGP HACK END @@@@@@@@@@@@@@@@@@@@@@
2. 881-934
PHP код:
// ############################### start TEST 2 ###############################
if (empty($total_right_answers) AND empty($total_answers))
{
###########################################################################
############### Проверка ответов на тест ###############
###########################################################################
// $right_as - массив из базы с правильными ответами
$right_as = $DB_site->query("SELECT * FROM pgp_register_test ORDER BY id");
я в четырех редакторах смотрел
и стандартный виндовский блокнот
и пхпекспедитор
и пхпедитор
и араксисмердж
и еще пара сторонних блокнотов... =))
может браузер так сохранил?