Контактная форма выглядит простой: несколько полей, кнопка и письмо. На деле это чувствительная часть сайта. Если она сделана плохо, она открывает адрес для роботов, создает спам или принимает опасный контент.

Не показывать email открыто

Email в исходном коде облегчает сбор адресов. Хорошая форма позволяет связаться с компанией, не отдавая роботам адрес для сбора.

Посетитель должен понимать, как связаться, но получатель письма не обязан быть виден в DOM.

Проверять на сервере

Проверка в браузере удобна, но ее можно обойти. Сервер должен проверить имя, email, длину сообщения и возможные инъекции.

Ошибки должны быть понятными, но без технических деталей.

Honeypot, token и лимит отправок

Honeypot блокирует ботов без капчи для человека. CSRF token проверяет происхождение запроса, а лимит отправок снижает злоупотребления.

NIKAIA.NET внедряет эти основы по умолчанию.