Как и другие ответы, используйте только шаблон Post / Redirect / Get при успешной проверке на стороне сервера. Если форма недействительна, просто ответьте на ответ напрямую, с сообщениями об ошибках.
Для удобства использования вы должны убедиться, что проверка на стороне клиента отличная, это хорошая идея любым способом, поскольку пользователям нравится немедленная обратная связь. Используйте Javascript или новые функции формы HTML5 , такие как атрибут required
или атрибут maxlength
или type="email"
и т. Д.
Конечно, вы все равно должны иметь проверку на стороне сервера для обеспечения безопасности и для грамотного деградации.