Перейти к контенту

[2.3.x]Защита от ботов: вопросы при регистрации v3


Arhar

Рекомендуемые сообщения

а, ну так правильно

ща скажу, как вернуть бысстрый ответ

 

	//antispam.question
	if ( $this->ipsclass->vars['questions_num'] and ($this->ipsclass->member['id'] == "" or !$this->ipsclass->member['id']))
	{
		$n = $this->ipsclass->num_correct();
		if($this->ipsclass->correct_answer($n)==false)
		{
			exit();
		}
	}		
//antispam.question

ну для начала вот так попробуй сделать

(добавить в мод куда я говорил)

Ссылка на комментарий
Поделиться на других сайтах

  • Ответы 823
  • Создана
  • Последний ответ

Лучшие авторы в этой теме

Ошибка: Fatal error: Call to undefined function: question_mod() in /home/nigmae/public_html/forum/sources/action_public/register.php on line 1287

 

Привожу то, что я добавил...

 

		//antispam.question
	if ($this->ipsclass->vars['questions_num'])
	{

		$this->ipsclass->DB->query("SELECT id,question FROM ibf_questions ORDER BY RAND() LIMIT 1");
		$row = $this->ipsclass->DB->fetch_row();
		$qinputf = $this->ipsclass->generate_qinputf();
			$row['answer_input'] = "<input type=\"text\" maxlength=\"60\" size=\"30\" name=\"".$this->prefix.$qinputf."\" />";

		$question_mod = $this->ipsclass->compiled_templates['skin_register']->question_mod( $row );

		$this->ipsclass->DB->query("UPDATE ibf_questions SET qinputf='".$qinputf."' WHERE id=".$row['id']);

		$this->output = str_replace( "<!--{ANTISPAM.QUESTION}-->", $question_mod , $this->output );
	}
	//antispam.question

 

Меня, собсна, интересует строка

$question_mod = $this->ipsclass->compiled_templates['skin_register']->question_mod( $row );

, которая находится на 1287 строке...

 

Упд: Выключил эту фигню в админке (всмысле "Включить защиту при регистрации с помощью вопросов?"), и всё стало норма, но, ествественно, без всяких вопросов ;)

 

.. :D

Ссылка на комментарий
Поделиться на других сайтах

Возможные причины:

1. Не добавили шаблон в скин или добавили, но не в ту группу шаблонов.

2. Из-за проблем с сейф мод или с правами на запись в директории со скином шаблон не записался в файл. Попробуйте в насройках внешнеговида - слева в меню выбрать "утилиты для стилей" и сделать пересоздание необходимого скина, там из списка выбирается.

Ссылка на комментарий
Поделиться на других сайтах

только + 2 запроса, и то только в случае гостя

явно что-то накосячил, раз кнопку затер

с запросами я разобрался.. да, мод не при чем ;)

 

а вот по-поводу косяков )).. смотрите

 

если в topics.php.. убрать не только строчку

 

$this->output = str_replace( "<!--IBF.QUICK_REPLY_OPEN-->"  , $this->ipsclass->compiled_templates['skin_topic']->quick_reply_box_open($this->topic['forum_id'], $this->topic['tid'], $show, $this->md5_check), $this->output );

 

но и одну выше.. вот эту

 

$this->output = str_replace( "<!--IBF.QUICK_REPLY_CLOSED-->", $this->ipsclass->compiled_templates['skin_topic']->quick_reply_box_closed(), $this->output );

 

быстрый ответ получится, ессестно, открыт всегда, кнопки "быстрый ответ" нет и не надо ))

 

по мне, так всё более разумней получилось :D

 

-------

 

опаньки! это оказывается только я, под админским аккауном быстрый ответ так вижу.. а юзеры нет.. ((

Изменено пользователем akura
Ссылка на комментарий
Поделиться на других сайтах

А кто мне ответит? :D(((((((((((

 

А ещё расширенная форма ответа заменилась на стандартную какашку...

Ссылка на комментарий
Поделиться на других сайтах

тебе уже ответил Саннис, причем абсолютно верно, учитывая стандартную форму ответа.

Поставь прогу Cute FTP, зайди в папку cache и сделай все, абсолютно все файлы там, и во вложенных в нее папках тоже, с правами доступа (CHMOD) 777

(поставь все галочки)

 

сегодня ставил этот мод друзьям, так собрал то, что натыкал в таблицу вопросов, думаю пригодится

INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('1','Планета, на которой мы живем (ответ вводить маленькими буквами)','земля','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('2','Первый день недели (ответ вводить маленькими буквами)','понедельник','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('3','Второй день недели (Первую букву вводить заглавной, остальные - маленькими)','Вторник','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('4','Третий день недели (ответ вводить маленькими буквами)','среда','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('5','Четвертый день недели (Первую букву вводить заглавной, остальные - маленькими)','Четверг','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('6','Пятый день недели (ответ вводить маленькими буквами)','пятница','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('7','Шестой день недели (Первую букву вводить заглавной, остальные - маленькими)','Суббота','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('8','Седьмой день недели (ответ вводить маленькими буквами)','воскресенье','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('9','Первый месяц года (ответ вводить маленькими буквами)','январь','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('10','Второй месяц года (Первую букву вводить заглавной, остальные - маленькими)','Февраль','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('11','Третий месяц года (ответ вводить маленькими буквами)','март','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('12','Четвертый месяц года (Первую букву вводить заглавной, остальные - маленькими)','Апрель','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('13','Пятый месяц года (ответ вводить маленькими буквами)','май','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('14','Шестой месяц года (Первую букву вводить заглавной, остальные - маленькими)','Июнь','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('15','Седьмой месяц года (ответ вводить маленькими буквами)','июль','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('16','Восьмой месяц года (Первую букву вводить заглавной, остальные - маленькими)','Август','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('17','Девятый месяц года (ответ вводить маленькими буквами)','сентябрь','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('18','Десятый месяц года (Первую букву вводить заглавной, остальные - маленькими)','Октябрь','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('19','Одиннадцатый месяц года (ответ вводить маленькими буквами)','ноябрь','');
INSERT INTO ibf_questions (id, question, answer, qinputf) VALUES('20','Двенадцатый месяц года (Первую букву вводить заглавной, остальные - маленькими)','Декабрь','');

Ссылка на комментарий
Поделиться на других сайтах

Arhar

Кстати, у буржуев неделя начинается с воскресенья... если не ошибаюсь :D и с этими первыми, вторыми, последними днями у них вечно будет выдавать ошибку ;)

Ссылка на комментарий
Поделиться на других сайтах

собрал то, что натыкал в таблицу вопросов, думаю пригодится

вот спс !

 

такие муки творчества были..вопросы с ответами придумывать ))

Ссылка на комментарий
Поделиться на других сайтах

а, ну так правильно

ща скажу, как вернуть бысстрый ответ

 

	//antispam.question
	if ( $this->ipsclass->vars['questions_num'] and ($this->ipsclass->member['id'] == "" or !$this->ipsclass->member['id']))
	{
		$n = $this->ipsclass->num_correct();
		if($this->ipsclass->correct_answer($n)==false)
		{
			exit();
		}
	}		
//antispam.question

ну для начала вот так попробуй сделать

(добавить в мод куда я говорил)

Класс! Спасибо! Теперь все работает отлично! :D Единственное что немножко смущает - это если вводить ответ на вопрос и нажимать ответить на форме, то не добавляется, а если вводить ответ и нажимать ентер сразу в форме ответа - все пахает. Но это не страшно, надо просто форму с вопросом ниже окошка сунуть, чтоб понятно было что после чего ;) Те, у кого аякса нет, таких проблем испытывать не должны :)

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

Установил ваш мод, форум версии 2.1.7

В админке установил один вопрос: Сколько дней в неделе? Ответ: Семь

При регистрации отвечаю на него словом "Семь", выползает следующая мессага:

 

"Обнаружены следующие ошибки

Ответ на защитный вопрос неверен. Повторите попытку."

 

Кто нибудь с этим сталкивался?

Ссылка на комментарий
Поделиться на других сайтах

явно не могу ничего сказать, не достаточно информации...

 

скажи, пожалуйста какую инфу тебе предоставить, потому что оч заинтересован в твоем моде.

Ссылка на комментарий
Поделиться на других сайтах

а у меня после всей этой установки появилась ошибка SQL после того как зашел в register...

 

что-то не то... у меня просто англ. версия, и тут кое-что явно отличалось от русской, не только в плане слов.

 

Кто-нить ставил этот мод на англ. версию 2.1.7?

Ссылка на комментарий
Поделиться на других сайтах

а какая нафиг разница, какой язык

ты скопирую сюда ТЕСКТ ошибки и только тогда можно ожидать помощи

постараюсь установить снова.

 

кстати, мне нужен вопрос только при регистрации... значит файл post и topic можно смело пропускать?

 

а какая нафиг разница, какой язык

ты скопирую сюда ТЕСКТ ошибки и только тогда можно ожидать помощи

ну вот... опять ошибка ;)

 

 

mySQL query error: UPDATE ibf_questions SET qinputf='zX3tRc' WHERE id=

SQL error: You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
SQL error code: 
Date: Monday 16th 2007f April 2007 06:42:53 AM

 

все исправил. спасибо.. глупая причина была :D

 

МОД СУПЕР!!!!

 

респект автору!

Ссылка на комментарий
Поделиться на других сайтах

---------------------------

Ошибка

---------------------------

C:\Downloads\phpfiles.rar

Архив повреждён или имеет неизвестный формат

---------------------------

ОК

---------------------------

Ссылка на комментарий
Поделиться на других сайтах

---------------------------

Ошибка

---------------------------

C:\Downloads\phpfiles.rar

Архив повреждён или имеет неизвестный формат

---------------------------

ОК

---------------------------

 

Пардон

Вот перевыложил: http://stream.ifolder.ru/1711359

Ссылка на комментарий
Поделиться на других сайтах


×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.