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

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


Arhar

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

после переезда с хоста на хост перестали работать вопросы

одно может быть - поле qinputf в таблице в бд глючит после переезда

мб обнулить это поле для всех

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

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

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

ну если не сложно, то можно попробовать

если и тогда не заработает, то думать сильнее и глубже, а именно "да пребудет с Вами Дебаг"

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

Спасибо Автору. решил много проблем с ботами)))

 

Возник вопрос.поставил мод-V.3

форум V-2.3.5

 

Проблема такая при регистрации юзера. Пример. имя "Каминари" в биваешь нажимаешь зарегить все норм, но после регистрации выдит что

его ник "Камина и" написан без буквы "р" правлю ручками в админке. проподает буква "К" " аминари" .. не пойму в чем проблема не подскажите где я допустил ошибку?

 

Зарание Благодарен!

 

 

На хосте ручками тоже пробовал такой же результат(((

 

если вбиваешь в слове "Каминари" маленькую букву "к" то все проходит нормально. Все проблема почемуто в бквах "р" и "К" пробовал ники похожие такаяже проблема при регистрации проподает "р" потом ручками правлю буква "К"

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

ну если не сложно, то можно попробовать

если и тогда не заработает, то думать сильнее и глубже, а именно "да пребудет с Вами Дебаг"

удалил все вопросы, добавил новый один. обнулил поле qinputf.

эффект нулевой.

 

 

Проблема такая при регистрации юзера. Пример. имя "Каминари" в биваешь нажимаешь зарегить все норм, но после регистрации выдит что

его ник "Камина и" написан без буквы "р" правлю ручками в админке. проподает буква "К" " аминари" ..

http://wiki.iblink.ru/kb/issues/removing_b..._and_user_names

 

не пойму в чем проблема не подскажите где я допустил ошибку?

 

в ДНК :D (сорри, вырвалось)

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

в register.php в районе стр 2144 добавил к формированию ошибки значение $n.

любое введенное значение оазывается нулем.

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

 

$form_errors['general'][] = $this->ipsclass->lang['err_reg_question'].' *****'.$n.'*****';

Но, тем не менее в функцию num_correct() прописал print_r($row)

 

 		while ($row = $this->DB->fetch_row() )
		{
		$s = $this->prefix.$row['qinputf'];
		print_r($row);
		if(isset($this->input[$s]) and (strtolower($this->input[$s]) == strtolower($row['answer'])))
			{
				$n++; 			
			}
		}

 

дает результат

Array ( [id] => 4 [answer] => 6 [qinputf] => 2eC57j )

 

и наконец, методом тыка выяснил, что $this->input[$s] пустая.

 

куда рыть?

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

на вопрос может быть несколько правильных ответов?

один вопрос на который правильными может быть несколько ответов подскажите как сделать?

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

$this->prefix

в ipsclass.php и register.php проверить в начале файлов наличие переменной в объявлении классов

 

один вопрос - один ответ, по строгому соответствию

даже не стал делать strtolower, ибо можно задать написать ответ с маленькой буквы или с большой

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

создай несколько одинаковых вопросов и ответы разные к ним

Не прокатит.

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

создай несколько одинаковых вопросов и ответы разные к ним

Не прокатит.

да, я уже прикинул, что не катит.

 

$this->prefix

в ipsclass.php и register.php проверить в начале файлов наличие переменной в объявлении классов

Объясни, плз, как и где вставить проверку сабжа.

Вставляю в начале ipsclass.php

print '<pre>'.$this->prefix.'</pre>';

вылетает с ошибкой

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

в исходнике

<input maxlength="60" size="30" name="answer_mWk8sw" type="text">

в базе qinputf = mWk8sw

 

ipsclass.php function num_correct() in while()

print_r($row);
print '<br /><b>s</b>>>>'.$s.'<<<<br />';
print '<b>this->input[s]</b< >>>'.strtolower($this->input[$s]).'<<<<br />';
print '<b>row[answer]</b> >>>'.strtolower($row['answer']).'<<<<br />';
print '<b>this->prefix</b> >>>'.$this->prefix.'<<<<br />';

 

Array ( [id] => 4 [answer] => 6 [qinputf] => mWk8sw )

s>>>mWk8sw<<<

this->input >>><<<

row[answer] >>>6<<<

this->prefix >>><<<

 

Пофиксил так:

Найти:

			if(isset($this->input[$s]) and (strtolower($this->input[$s]) == strtolower($row['answer'])))

Заменить на:

			if(isset($this->input['answer_'.$s]) and (strtolower($this->input['answer_'.$s]) == strtolower($row['answer'])))

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

$this->input['answer_'.$s]

перед этим итак есть

$s=$this->prefix.$row['quinputf'];

так что переменная не объявлена в начале класса

 

действие 17.А

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

У меня версия движка v2.3.5

 

Мод не работает! Всё установил нормально...

Сделал вопрос: В какой группе играл Varg Vikernes? (ответ маленькими буквами)

Ответ: burzum

 

Всё ввожу правильно и мне пишет: Ответ на защитный вопрос неверен. Повторите попытку.

 

trueforum.ru - помогите пожалуйста.... А то уже совсем жить не дают эти спам боты!!!!

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

Переустановил. Делал всё строго по инструкции!

Теперь у некоторых со 2 попытки регится а у некоторых и с 10 не работает.

 

trueforum.ru - помогите пожалуйста...

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

Что озночает этот код ошибки на странице регистрации и что делать:

Parse error: syntax error, unexpected T_IF, expecting T_FUNCTION in /home/***/public_html/forum/sources/action_public/register.php on line 1660

 

UPD: Я допускал цифровые вопросы, из-за этого или ошибка из-за неправильной установки (больше ошибок не заметил а зарегистрироваться нельзя)?

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


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

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

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