2014-10-18 6 views
-1

Я пытаюсь создать простой javascript-код на основе строк, которые я буду обновлять в массиве.простой javascript captcha на основе строк из массива

Она должна работать так:

  • Мой массив (выглядит следующим образом: ["black", "red", "blue", "green"])
  • Выберите случайную строку из моего массива
  • Заменить случайную строку, которая была выбрана в промежутке с " пожалуйста, напишите случайную строку в следующем поле»
  • Затем проверьте if ($.trim($(".contact-form input#header-answer").val()) === "random string")

Сейчас я создал только решение, которое работает с одной строкой, а не случайные строки из моего ARRA, вот это:

$(".contact-form form#gform_1").before('<div id="header-question"><span>please write "red" in the next field</span><input id="header-answer" type="text" name=""></div>'); 

if ($.trim($(".contact-form input#header-answer").val()) === "red") { 
    $(".contact-form form#gform_1").submit(); 
} 
else { 
    alert('wrong answer try again!'); 
    return false; 
} 
+2

Это не ... CAPTCHA, искаженный производятся с использованием изображения или аудио источника, чтобы сделать его невозможным для компьютеров и автоматических программ, признавших его. Поэтому использование простого текста внутри пролета (который может быть прочитан любой программой и взломан в миллисекундах) просто бесполезен, это не имеет никакого смысла. –

+0

Также серверу необходимо знать «секрет». Хорошего отладчика браузера хватит –

+0

@ Марко Бонелли, вы правы, и я это знаю! но мне нужно создать простое решение captcha для ивритных строк. большинство ботов не знают работать с ивритом. если вы знаете лучшее решение для ивритных струн, я буду рад узнать. – user2413244

ответ

-1

Хотя я согласен с комментариями выше, и я думаю, что название неверно , Это небольшой фрагмент того, что вы ищете. Снова я подчеркиваю, что приведенные выше комментарии верны, говоря, что это не будет действовать как безопасный способ защиты представлений.

var a = ["black", "red", "blue", "green"]; 
var item = a[Math.floor(Math.random()*a.length)]; 

$(".contact-form form#gform_1").before('<div id="header-question"><span>please write "' + item + '" in the next field</span></div>'); 

$(".contact-form form#gform_1").on("submit", function(e) { 
    if ($.trim($(".contact-form input#header-answer").val()) === item) { 
     //$(".contact-form form#gform_1").submit(); 
     alert("all good"); 
    } 
    else { 
     alert('wrong answer try again!'); 
     return false; 
    } 
}); 

http://jsfiddle.net/L9wcagLr/

+0

Спасибо @Chris Мне нужно создать простое решение captcha для ивритных строк. большинство ботов не знают работать с ивритом. если вы знаете лучшее решение для ивритных струн, я буду рад узнать. – user2413244

+0

Я не уверен, что ивритские струны сыграют большую роль. Это сводится к тому, что вы защищаете, и насколько важно останавливать ботов. – Chris

+0

@ user2413244 - Попробуй мусульманские !? Во всяком случае, большинство ботов не интересуется языком - для них серия бит –

Смежные вопросы