Можно ли отследить OnKeyDown в поле ввода?

123 4
dag
На сайте с 10.02.2007
Offline
214
dag
1136

пока поднимался в лифте из гаража - пришла в голову странная мысль...

я "классический" программист в части клиентских приложений (си шарп, делфя и т.п). в них у визуальных компонентов-редакторов текста есть события "нажата клавиша", "отпущена клавиша" и т.п. лекго можно учитывать, что где и когда было нажато...

а можно ли как то извернуться и изобрести аналоги этих событий для хтмл форм?

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

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#1

Я вас удивлю, но боты вообще форму не загружают, а просто отправляют на обработку PHP скрипту.

Нажатие отслеживается по javascript, но как и писал выше, ботам плевать будет на это правило.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
M
На сайте с 30.11.2012
Offline
44
#2

javascript поможет вам. Не скажу, что вы найдете там события как, например в шарпе, но нашаманить можно.

есть разные типы ботов: боты напрямую кидают запрос скрипту(т.е. они не имеют дело с заполнением форм) и боты, которые за человека все вводят(такие как, например, зеннопостер)

И кстати, вы не подумали, что существует автозаполнение в браузерах и пользователь может не вбивать данные, они сами будут введены, вы это не сможете поймать.

dag
На сайте с 10.02.2007
Offline
214
dag
#3

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

mronegin, ну всегда наверно можно придумать поле, неприемлимое для автозаполнения по смыслу...

завтра проснусь почитаю что можно нарыть в javascript... на свежую голову :)

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#4
LEOnidUKG, ну идея в том, что если небыло нажатий, причем правильно распределенных по времени, то значит это бот и форму не обрабатывать. как то так.

Расскажите нам как вы это хотите сделать :)

dag
На сайте с 10.02.2007
Offline
214
dag
#5

LEOnidUKG если бы я уже знал, как, я бы не создавал эту тему :)

[Удален]
#6
LEOnidUKG:
Расскажите нам как вы это хотите сделать

Боты всё делают мгновенно, а человек - тормозит не редко, особенно с похмелья... ))

D
На сайте с 14.01.2007
Offline
153
#7

ботом симулируется 99% действий пользователя.

оставшиеся 1% не имеют смысла из-за высокой цены

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#8
Pavel_:
Боты всё делают мгновенно, а человек - тормозит не редко, особенно с похмелья... ))

Тут вопрос о технике реализации, а не о теориях реакции :)

---------- Добавлено 31.01.2013 в 14:19 ----------

А вообще как я бы порекомендовал избавиться от части ботов.

1. Отправлять данные через ajax

2. Убрать форму и считывать данные напрямую с полей

3. Запретить обращаться не аякс скриптам к файлам

Ну вот и всё, этим вы уберёте львиную долю автоматов. Останутся или написанные чисто под вас боты или уже сами люди, которые спамят руками.

eN_Slon
На сайте с 13.02.2007
Offline
159
#9
LEOnidUKG:
чисто под вас боты или уже сами люди

ну или другими словами все нормальные боты :)

---------- Добавлено 31.01.2013 в 10:28 ----------

dag:
достали просто капчи

а они и не спасут - антигейты же есть

Парсинг, граббинг, автоматизация всего что вы можете сделать в браузере(и не только) сами. Любое кол-во, любые защиты.
LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#10
ну или другими словами все нормальные боты

Какие нормальные? Написанные на чистом PHP? Не сделают этого.

Через эмуляторы только, но его надо покупать и настраивать чисто под определённый сайт.

123 4

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий