1. Методы подтверждения
2. Что требует подтверждения
3. Сообщение об ошибке
4. Семь раз отмерь
5. Вы - человек?
1. Методы подтверждения
Ввод данных пользователя может подтверждаться на сервере или на компьютере-клиенте (через веб-браузер). То есть, имеются две точки подтверждения - со стороны сервера и со стороны клиента. Разберём преимущества и недостатки обеих.
→ Процедура подтверждения со стороны сервера
В данном случае, информация поступает на сервер и подтверждается кодами одного из языков этого сервера. При получении отказа в подтверждении, клиенту высылается уведомление, страница, на которой помещена форма, обновляется, выводится сообщение об ошибке. Надёжность этого метода состоит в его способности продолжать работу даже при отключении javascript в браузере и устойчивости ко взлому. С другой стороны, пользователи лишены возможности корректировать заполненную форму до её отсылки, что увеличивает время взаимодействия с сервером.
Исключение составляет подтверждение посредством Ajax. Сигналы Ajax, принимаемые сервером, могут подтверждаться по ходу заполнения формы и получать мгновенный ответ. Здесь мы называем подтверждением приемлемость вводимых данных, например, допустимость конкретного имени пользователя. Подробнее о подтверждении с помощью Ajax можно прочесть в этом отличном пособии для дизайнеров - jQueryForDesigners.

На схеме показаны различия между способами подтверждения со стороны клиента и сервера, а также другие пути решения этой проблемы.
→ Подтверждение со стороны клиента
Подтверждения со стороны сервера достаточно для успешного и надёжного завершения отправки формы. Но пользователю иногда удобнее прибегнуть к подтверждению со стороны клиента. Эта операция производится на компьютере-клиенте с помощью языков программирования, таких как javascript. Вводя данные с применением кодировки, пользователь может получать их подтверждение, пока печатает текст. Оно в этом случае отображается сразу и гораздо заметнее.
При подтверждении со стороны клиента, форму нельзя отправить, если получен отказ. Операция производится вами средствами javascript (или через структуры/модули), поэтому сообщение об ошибке выдаётся вместе с отказом.
Основной недостаток этого способа подтверждения - его зависимость от javascript. Отключив javascript, пользователи могут легко отправить некорректную форму. Поэтому подтверждение всегда должно осуществляться с обеих сторон - и клиентом, и сервером. Совмещая эти способы, мы можем получить преимущества обоих: высокую скорость обработки данных, более надёжную процедуру подтверждения и удобство для пользователя.
Компьютер-клиент получает мгновенное подтверждение регистрации на TypePad.