Я бы с осторожностью использовал трюки CSS или Javascript, чтобы убедиться, что пользователь - настоящий реальный человек, поскольку вы могли бы представлять проблемы с доступностью, проблемы с несколькими браузерами и т. Д. Не говоря уже о спам-ботах, которые могут быть довольно сложными, поэтому используйте симпатичныеМаленькие хитрости CSS могут даже не сработать.
Я бы посмотрел на Akismet.
Кроме того, вы можете проявить творческий подход к проверке пользовательских данных.Например, допустим, у вас есть форма регистрации, требующая адрес электронной почты и адрес пользователя.Вы можете быть довольно хардкорными в том, как вы проверяете адрес электронной почты, даже если вы убедитесь, что домен действительно настроен для получения почты, и что в этом домене есть почтовый ящик, который соответствует предоставленному.Вы также можете использовать API Карт Google, чтобы попытаться найти адрес и убедиться, что он действителен.
Чтобы продвинуться еще дальше, вы можете реализовать «жесткие» и «мягкие» ошибки проверки.Если почтовый адрес не соответствует строке проверки регулярного выражения, то это серьезный сбой.Невозможность проверить записи DNS домена, чтобы убедиться, что он принимает почту или что почтовый ящик существует, является «мягким» отказом.Когда вы сталкиваетесь с программным отказом, вы можете запросить проверку CAPTCHA.Мы надеемся, что это уменьшит количество попыток подтверждения CAPTCHA, потому что, если вы получаете достаточно активности на сайте, действительные люди должны вводить действительные данные хотя бы некоторое время!