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

24 апреля, 11:34 Работа 3834 6
Как сделать чтобы посетитель мог отправить заявку с сайта только один раз? Т.е. заполнил форму, отправил, и второй раз уже нельзя было.. в течении недели допустим.
6 комментариев
Сортировка:
Добавить комментарий
Leonid Levchenko
Leonid Levchenko 2019, 24 апреля, 20:39
0
Пользователь же указывает какие-то данные (типа тел или мыло) вот его и проверяете. + проверки что писали выше (сессии, куки, капчи) - это для чтобы вас не использовали как спам сервер.
Ivan
Ivan 2019, 24 апреля, 18:39
0
Нужно понимать что если пользователь не авторизирован (то есть эта функция доступна любому зашедшему на сайт) то реализовать подобное технически нереально. Можно максимально затруднить процесс, но полностью решить проблему нет возможности. Методы затруднения тут перечислили в основном, я коротко пробегусь по основным: 1) Куки - самый базовый метод, плюсы - простая реализация, для обычных пользователей работает весьма надежно. Минусы - легко обходится любым пользователем который знает как почистить куки или сменой браузера. 2) Эверкуки - продвинутые методы хранения меток на стороне клиента, там целый набор методов, читайте доку к библиотеке. плюсы - простой чисткой кукисов уже не лечится, минус - нужно дополнительно заморочиться, ну и смена браузера емнип сводит все на нет. 3) Фингерпринты - тема обширная, решение достаточно надежное, но основано на статистике, то есть имеет погрешность, которая много от чего зависит. Плюс - хорошо работает в качестве идентификатора, минус - может давать ложные срабатывания и опять же - смена браузера сильно снижает эффективность метода.
Viktor Kravchenko
Viktor Kravchenko 2019, 24 апреля, 16:38
0
смотреть на куки + IPшник. (Куки можно очищать, IPШник можно менять.) Можно смотреть по контенту заявки, если такая есть то тоже блочить.
Maks
Maks 2019, 24 апреля, 14:52
0
Записать данные заявки, дату заполнения и данные посетителя в базу. При добавлении новых заявок смотреть, есть ли у нас точно такая же заявка, если есть сравниваем даты, если совпадает выводим ошибку.
Sania
Sania 2019, 24 апреля, 13:51
0
Если пользователь анонимный, то куки. Можно ещё всякие отпечатки браузера использовать. Если авторизованный, то нужно сделать отдельное поле в базе данных, где и помечать, что пользователь уже отправил форму, а точнее дату отправки, чтобы сравнивать её с текущей каждый раз.
Seroga Proga
Seroga Proga 2019, 24 апреля, 12:52
0
После отправки, записать в куку\бд время отправки + неделя, и при последующих попытках сверять, если текущее меньше той, что установлено в куке\бд, посылать в лес за грибами.

IT Новости

Смотреть все