Ищете очень простой класс / функцию защиты от спама для ASP Classic

Я ищу очень простое решение для предотвращения (или уменьшения) спама в форме. У меня есть довольно много классических приложений ASP, которые содержат контактные / разные формы, которые генерируют электронные письма. Немногие из них были пойманы спам-ботами и подвергаются насилию. Мне нужно очень простое решение (я), чтобы уменьшить спам, если не устранить его. Аудио / Визуальные капчи не подлежат обсуждению, так как посетители будут тратить больше времени на решение капч, чем на использование самой формы. Методы скрытых переменных Session / timestamp / javascript приемлемы при условии, что кто-то их использовал и достаточно доволен результатами. Класс или функция полезности будет предпочтительным. Спасибо.

6.11.2009 10:37:34
3 ОТВЕТА
РЕШЕНИЕ

Я бы предложил использовать поле приманки. Это обсуждалось ранее на StackOverflow, и многие люди добились успеха в этом. Я не видел, чтобы кто-нибудь записывал детали для того, чтобы делать это с ASP classic, но это не должно быть значительно сложнее, чем с PHP.

По сути, вы открываете поле и скрываете его с помощью CSS или JS, если оно не пустое, вы посмотрите на бота. Это победно, но большинство систем в конечном итоге.

6
23.05.2017 11:55:41
Я реализовал (i) поле honeypot (ii) проверку на основе javascript, как описано ниже (iii) проверку сеанса, чтобы увидеть, отправил ли пользователь сообщения напрямую, не открывая форму
Salman A 7.11.2009 09:03:24

Если вам нужна очень простая проверка на спам, попробуйте следующее: добавьте скрытый ввод в форму. в вашем представлении события onclick присвойте значение скрытому. document.getElementByName ('hdn'). value = "1";

тогда вам нужно проверить в вашей форме действия, если hdn равен «1». Это избавит вас от большого количества ботов, которые не могут запустить JavaScript (многие из них не могут).

1
6.11.2009 10:47:25
Да, но вы потеряете людей, которые блокируют JavaScript. В зависимости от вашего уровня трафика и аудитории, это может быть проблематично.
acrosman 6.11.2009 14:08:31
@acrosman: хотя это технически правильно, трудно поверить, что обычным людям удается использовать Интернет с отключенным javaScript. Это может иметь место в некоторых телефонах, но все же ...
Eduardo Molteni 6.11.2009 17:07:34

Простейший, который сработал для меня на 100% (для сайтов с пользовательским / низким трафиком, конечно), меняется

<INPUT type="submit" value="send">

за

<INPUT onclick="OnSendClicked()" type="button" value="send">

а потом

function OnSendClicked() {
    var f = document.frm;
    f.Send.value = "Yes"; //Optional, if you want to check for Yes on the server
    f.submit();
 }
2
6.11.2009 14:04:44