Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.02.2019, 11:49
Новичок на форуме
Отправить личное сообщение для petrpetrov191 Посмотреть профиль Найти все сообщения от petrpetrov191
 
Регистрация: 05.02.2019
Сообщений: 3

Запретить повторную отправку заявки
Здравствуйте. На одностраничном сайте есть несколько форм для заполнения. Нужно сделать, чтобы один посетитель мог оставить только 1 заявку, даже если он перезагрузил страницу. Сайт предоставлю. Сделать нужно без применения БД. Через сессии или куки, не разбираюсь в этом. Сколько это будет стоить?
Ответить с цитированием
  #2 (permalink)  
Старый 05.02.2019, 13:54
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от petrpetrov191
сессии или куки
Cессия живет не более нескольких десятков минут, а куки клиент может удалять. Может помочь локальное хранилище, если оно поддерживается браузером, но это тоже не гарантия - можно отправить с другого браузера или устройства.
Ответить с цитированием
  #3 (permalink)  
Старый 05.02.2019, 14:01
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,723

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

Думаю сессии достаточно будет, печеньку можно записать на 10 лет и пользователь не сможет больше с этого браузера ближайшие 10 лет повторно отправить сообщение, что не всегда правильно.

А если загоняться, то тут без биометрических данных никак не обойтись)
Ответить с цитированием
  #4 (permalink)  
Старый 05.02.2019, 14:46
Новичок на форуме
Отправить личное сообщение для petrpetrov191 Посмотреть профиль Найти все сообщения от petrpetrov191
 
Регистрация: 05.02.2019
Сообщений: 3

Сообщение от Nexus Посмотреть сообщение
laimas, это скорее всего не борьба со спамом, а просто запрет отправлять одному и тому же пользователю 10 раз одни и те же данные в единицу времени.

Думаю сессии достаточно будет, печеньку можно записать на 10 лет и пользователь не сможет больше с этого браузера ближайшие 10 лет повторно отправить сообщение, что не всегда правильно.

А если загоняться, то тут без биометрических данных никак не обойтись)
правильно, человек может сначало заказать звонок, а потом сразу заполнить форму например с записаться на консультацию. нужно просто, чтобы он не мог оставить ещё заявки, достаточно и одного обращения
Ответить с цитированием
  #5 (permalink)  
Старый 05.02.2019, 14:53
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

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

Вопрос тогда должен ставиться так - для добросовестных не более одного сообщения за период Т. А вот спам это никак не отсчет.
Ответить с цитированием
  #6 (permalink)  
Старый 05.02.2019, 15:00
Новичок на форуме
Отправить личное сообщение для petrpetrov191 Посмотреть профиль Найти все сообщения от petrpetrov191
 
Регистрация: 05.02.2019
Сообщений: 3

Сообщение от laimas Посмотреть сообщение
Ага, ну прямо таки непреодолимый барьер для спамера. Ну что за глупости, это как раз будет работать только для "честных", а для спамера это как полная фигня - запретили куки и все, не будет ни сессии, ни кук, а о 10 годах, это вообще фантастика.

Вопрос тогда должен ставиться так - для добросовестных не более одного сообщения за период Т. А вот спам это никак не отсчет.
это не защита от спама
Ответить с цитированием
  #7 (permalink)  
Старый 05.02.2019, 15:05
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,723

laimas,
Сообщение от laimas
Ага, ну прямо таки непреодолимый барьер для спамера. Ну что за глупости, это как раз будет работать только для "честных", а для спамера это как полная фигня - запретили куки и все, не будет ни сессии, ни кук, а о 10 годах, это вообще фантастика.
Ну так я и подразумевал обычных пользователей, не спамеров)
Думал это очевидно после первого абзаца.
Ответить с цитированием
  #8 (permalink)  
Старый 05.02.2019, 15:05
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Ну тогда можно и сессию использовать - проверяем, есть установленное в нее значение, значит не принимаем более (можно и форму клиенту уже не выводить). Но лучше на клиенте проверять куку и если она есть не отправлять форму, показывая сообщение, что она уже отправлялась. И если не от спама, то и кука может быть и сессионной.
Ответить с цитированием
  #9 (permalink)  
Старый 05.02.2019, 15:13
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Nexus
Ну так я и подразумевал обычных пользователей, не спамеров)
И при этом куку на 10 лет.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как запретить отправку формы если маил занят. daimon0482 AJAX и COMET 9 21.06.2017 04:09
Запретить ссылку если есть подменю. Jolly Элементы интерфейса 15 08.06.2017 02:45
Модальное окно, запретить скролл всему документу на чистом JS TommyWork Общие вопросы Javascript 8 13.04.2017 10:39
Как реализовать отправку содержимого из iframe нажатием комбинации клавиш ctrl+enter Naizer Общие вопросы Javascript 4 27.11.2013 17:39
Как можно в DIV_е с включенным contentEditable запретить использовать <SCRIPT> и <A>? Маэстро Events/DOM/Window 11 02.07.2011 20:00