|
Злодейские моды для phpBB Создание и поддержка развлекательных модов: тотализатор, викторина, аукцион, шахматы
|
Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
101
Зарегистрирован: 29.06.2008 Сообщения: 10
баксов: 2045.00
|
Добавлено: Пн Апр 27, 2009 16:55 Заголовок сообщения: После N вопросов - добавить вопрос |
|
|
Вот в моей версии викторины сделано так:
после каждых N вопросов пользователю необходимо добавить 1 вопрос.
Но ситуация такая: у пользователя пришло вдохновение, он понадобавил штук 200 вопросов. Он молодец.
Но после N вопросов - его снова просят добавить вопрос =(
Можно ли сделать так, чтобы при добавлении вопроса - эта отсрочка для пользователя увеличивалась на N число?
Т.е. добавил он 200 вопросов, то в след раз его попросят добавить вопрос лишь после 200*N |
|
Вернуться к началу |
|
|
Zlodey Автор тотализатора
Зарегистрирован: 08.01.2008 Сообщения: 222
баксов: 16751.05
|
Добавлено: Пн Апр 27, 2009 20:09 Заголовок сообщения: |
|
|
можно
просто нужно определиться, какой из вариантов для тебя важнее
(сделать в админке переключатель не проси, не буду ) |
|
Вернуться к началу |
|
|
101
Зарегистрирован: 29.06.2008 Сообщения: 10
баксов: 2045.00
|
Добавлено: Вт Апр 28, 2009 16:21 Заголовок сообщения: |
|
|
важнее с отсрочкой как я описал... |
|
Вернуться к началу |
|
|
Zlodey Автор тотализатора
Зарегистрирован: 08.01.2008 Сообщения: 222
баксов: 16751.05
|
Добавлено: Пт Май 01, 2009 15:40 Заголовок сообщения: |
|
|
чтобы сделать отсрочку при множестве добавленных вопросах делаем следующие изменения (для версии "1.55+"):
add_question.php
найти
Код: | $conf_minpost2 = ($conf_podl_on==1) ? $confs_podl[2] : 0; |
после добавить
Код: | $conf_nzvop = ($conf_podl_on==1) ? $confs_podl[3] : 0; |
найти
Код: | SET prin_vop = prin_vop+1, prin_vop_all = prin_vop_all+1, limit2add = 0 |
заменить на
Код: | SET prin_vop = prin_vop+1, prin_vop_all = prin_vop_all+1, limit2add = limit2add + $conf_nzvop |
question.php
найти
Код: | if ($conf_nzvop AND $row['limit2add']>=$conf_nzvop) |
заменить на
Код: | if ($conf_nzvop AND $row['limit2add']<1) |
найти
Код: | $ss = ($conf_nzvop) ? 1 : 0; |
заменить на
Код: | $ss = ($conf_nzvop) ? -1 : 0; |
quizzz.php
найти
Код: | $sql= "UPDATE " . QUESTIONS_ACTIVE_TABLE . " SET prin_vop = prin_vop+1, prin_vop_all = prin_vop_all+1, limit2add = 0 WHERE user_id = $author_id LIMIT 1"; |
заменить на
Код: | $sql= "UPDATE " . QUESTIONS_ACTIVE_TABLE . " SET prin_vop = prin_vop+1, prin_vop_all = prin_vop_all+1, limit2add = limit2add + $conf_nzvop WHERE user_id = $author_id LIMIT 1"; |
найти
Код: | if ($conf_nzvop AND $limit2add>$conf_nzvop-2) |
заменить на
Код: | if ($conf_nzvop AND $limit2add<2) |
admin_quizzz.php
найти
Код: | $c_podl_on = (isset ($HTTP_POST_VARS['disable_podl'])) ? '0' : '1'; |
перед этим добавить
Код: | $sql= "SELECT config_value FROM " . QUESTIONS_CONFIG_TABLE . " WHERE config_name = 'n2'";
if ( !($result = $db->sql_query($sql)) ){message_die(GENERAL_ERROR, $lang['qz_obloms'] ."521".$lang['qz_obloms_plus'], '', __LINE__, __FILE__, $sql);}
$row3 = $db->sql_fetchrow($result);
$n2 = $row3['config_value'];
$confs_podl = explode(',',$n2);
$c_nzvop_old = $confs_podl[3]; |
найти
Код: | if (!$c_nzvop)
{
$sql = "UPDATE " . QUESTIONS_ACTIVE_TABLE . "
SET limit2add = 0
WHERE limit2add != 0";
if( !$db->sql_query($sql) ){message_die(GENERAL_ERROR, $lang['qz_obloms']."504".$lang['qz_obloms_plus'], "", __LINE__, __FILE__, $sql);}
} |
заменить на
Код: | if ($c_nzvop_old!=$c_nzvop)
{
$sql = "UPDATE " . QUESTIONS_ACTIVE_TABLE . "
SET limit2add = $c_nzvop
WHERE user_id != 0";
if( !$db->sql_query($sql) ){message_die(GENERAL_ERROR, $lang['qz_obloms']."503".$lang['qz_obloms_plus'], "", __LINE__, __FILE__, $sql);}
} |
найти
Код: | $sql= "UPDATE " . QUESTIONS_ACTIVE_TABLE . "
SET prin_vop = prin_vop+1,
prin_vop_all = prin_vop_all+1,
limit2add = 0
WHERE user_id = $author_id LIMIT 1"; |
заменить на
Код: | $sql= "UPDATE " . QUESTIONS_ACTIVE_TABLE . "
SET prin_vop = prin_vop+1,
prin_vop_all = prin_vop_all+1,
limit2add = limit2add+$c_nzvop
WHERE user_id = $author_id LIMIT 1"; |
найти
Код: | if ( (isset($HTTP_POST_VARS['edit1']) AND isset($HTTP_POST_VARS['edit11'])) OR (isset($HTTP_POST_VARS['edit2']) AND isset($HTTP_POST_VARS['edit22'])) OR (isset($HTTP_POST_VARS['edit3']) AND isset($HTTP_POST_VARS['edit33'])) ) $edit=1; |
перед этим добавить
Код: | $sql= "SELECT config_value FROM " . QUESTIONS_CONFIG_TABLE . " WHERE config_name = 'n2'";
if ( !($result = $db->sql_query($sql)) ){message_die(GENERAL_ERROR, $lang['qz_obloms'] ."521".$lang['qz_obloms_plus'], '', __LINE__, __FILE__, $sql);}
$row3 = $db->sql_fetchrow($result);
$n2 = $row3['config_value'];
$confs_podl = explode(',',$n2);
$c_nzvop = $confs_podl[3]; |
вроде все работает как надо. но можешь еще до установки потестировать тут
лимит установлен в 4 вопроса |
|
Вернуться к началу |
|
|
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах You cannot attach files in this forum You can download files in this forum
|
Заблокировано регистраций / сообщений: 205834 / 0
|