Проверка HTML5 против проверки PHP - PullRequest
2 голосов
/ 07 декабря 2011

Когда приходит проверка формы, какой метод лучше всего продолжить? С HTML5 вы можете проверить адрес электронной почты и номер телефона, но обычно я делаю это с PHP, так какой метод лучше? Или я должен проверить ввод в HTML5 и PHP?

Ответы [ 6 ]

10 голосов
/ 07 декабря 2011

Оба.

Правило большого пальца:
Проверка на стороне клиента, чтобы предоставить пользователям лучший опыт.
Проверка на стороне сервера, чтобы убедиться, что 100% полученных вами данных соответствуют вашим ожиданиям.

3 голосов
/ 07 декабря 2011

Всегда проверять на языке программирования на стороне сервера, кроме того, вы можете использовать проверку на стороне клиента. Причина этого заключается в том, что все может быть изменено на стороне клиента и, таким образом, обойти любую проверку на стороне клиента. Это даже не сложно, и есть много инструментов, доступных для людей, чтобы изменить html и / или Javascript для отправки того, что они хотят.

Золотое правило: никогда не доверяй пользователю. Ожидайте худшего и готовьтесь к этому. Вы можете и должны использовать такие инструменты, как firebug или другие инструменты для веб-разработчиков, чтобы попробовать что-то.

1 голос
/ 07 декабря 2011

Вы должны сделать оба. Проверка HTML5 и / или JavaScript на стороне клиента для сохранения загрузки страницы пользователем, а также проверка PHP, потому что вы никогда не сможете полностью доверять стороне клиента.

0 голосов
/ 13 июля 2015

У большинства профессиональных программистов есть подход проверки полей ввода с помощью языка сценариев на стороне сервера.Проверка формы на стороне сервера с использованием PHP лучше, чем проверка HTML5, а проверка на стороне клиента выполняется несколькими способами:

  1. HTML5 содержит несколько атрибутов, которые автоматически проверяют поля ввода, например: электронная почта, телефон и т. Д.,Эти атрибуты ограничены.в то время как в реальном мире есть много форм, в которых есть некоторые поля, которые не могут быть напрямую проверены с помощью HTML5.

  2. Если вы думаете о проверке на стороне клиента с использованием javscript в качестве второй опции, тогда оставайтесь вИмейте в виду, что JavaScript можно отключить в браузере.таким образом, это в конечном итоге повлияет на пользовательский опыт. Поэтому лучше проверять ваши формы с помощью языковых сценариев на стороне сервера, таких как PHP.

  3. Вы должны принять вышеуказанный подход для веб-сайтов, содержащих конфиденциальные данные.но

0 голосов
/ 12 июля 2012

Ответ оба верны.Не предпочтение (как утверждают некоторые), а требование.Весь HTML (включая HTML5) можно редактировать прямо на вашей странице через браузер.Как и в случае использования Firebug для редактирования заголовка этой страницы, вы можете редактировать средства проверки ввода HTML, и если они не имеют проверки на стороне сервера, он примет все, что вы добавили туда.Обработка проверки только с помощью HTML5 - это все равно, что приглашать хакеров повредить все ваши таблицы БД.Вы хотите это?

Я нашел этот последний комментарий на сайте этого глупого парня в качестве наглядного примера: http://demosthenes.info/blog/462/Goodbye-JQuery-Validation-HTML5-Form-Errors-With-CSS3

0 голосов
/ 07 декабря 2011

Я предпочитаю оба. Хорошо при заполнении формы получать уведомления, если что-то не совпадает. Однако вы не можете полагаться на проверку JS, поскольку ее легко обойти, поэтому требуется серверная часть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...