Почему вы должны проверять формы с помощью javascript?

Какой смысл проверять ваши HTML-формы с помощью Javascript, если вам все равно понадобится проверять формы с помощью PHP? Я понимаю, что вы получаете повышение скорости от этого, и это более удобно для пользователя, но помимо этого, стоит ли тратить на это время? Если у кого-нибудь есть какие-либо веские доказательства по этому поводу, я хотел бы услышать это.

Спасибо за любую помощь!
Метрополис

ОБНОВЛЕНИЕ

После получения многочисленных ответов я хотел бы немного изменить вопрос. Мы все знаем, что javascript намного удобнее для пользователя и дает более быструю обратную связь. Что мне интересно, так это: кто-нибудь видел "доказательства" того, что оно того стоит? Или мы просто делаем это, потому что это делает вещи немного лучше, и все говорят, что мы должны? Разница в скорости не так уж значительна, и, поскольку интернет становится быстрее, проверка javascript станет еще более устаревшей, как мне кажется.

Я начинаю задумываться, можно ли потратить время, потраченное на проверку страницы с использованием javascript.

9
задан Metropolis 10 August 2010 в 14:05
поделиться

9 ответов

В идеале, вы проверяете с помощью javascript и (в вашем случае) PHP.

Оба метода проверки будут работать в тандеме, чтобы гарантировать, что вы получите максимально надежную и удобную функциональность для конечного пользователя.

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

вы проверяете на стороне сервера безопасность . Вы можете контролировать все на сервере и ничего на клиентской машине. Именно здесь вы гарантируете, что все введенные данные не являются вредоносными и правильными.

Имейте в виду: если вы собираетесь использовать только один тип проверки, выберите проверку на стороне сервера, потому что она более безопасна . Вы не должны никогда полагаться на клиентский код для обеспечения какой-либо безопасности.

Использование обоих типов проверки дает вам лучшее из обоих миров (скорость реагирования и безопасность), не имея при этом никаких недостатков. Конечно, это означает, что вам придется писать больше кода, но, на мой взгляд, оно того стоит.

РЕДАКТИРОВАТЬ: В ответ на комментарии

Да, вы должны написать больше кода таким образом ... Как показывает опыт, если это сложнее для программиста, это проще для пользователя . В некоторых бюджетах может быть нецелесообразно выполнять оба типа проверки, и вам придется сделать это. Просто убедитесь, что проверка на стороне вашего сервера безупречна.

Да, время - деньги, а время, потраченное на улучшение взаимодействия с пользователем, - это время, потраченное не зря.Если вы не можете себе позволить сделать это сейчас (сроки / график / бюджет), делайте это, когда сможете.

15
ответ дан 4 December 2019 в 22:26
поделиться

Все дело в удобстве использования. Пользователю гораздо удобнее читать, какие ошибки он допустил до перезагрузки страницы, чем постоянно отправлять и перезагружать страницу. Я думаю, он также может улучшить внешний вид с помощью некоторого AJAX и тому подобного, а не перезагрузкой страницы и очень уродливыми красными сообщениями об ошибках. Итак, преимущество? Намного удобнее, чем только проверка на стороне сервера.

2
ответ дан 4 December 2019 в 22:26
поделиться

Для удобства пользователей.

Обратная связь о проверке JS выполняется быстрее и, следовательно, лучше, чем проверка на стороне сервера при отправке формы.

0
ответ дан 4 December 2019 в 22:26
поделиться

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

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

Суть в том, что вам все равно нужно будет вводить хорошие данные в вашу базу данных. И чем точнее будет храниться информация, тем меньше проблем с системой у вас возникнет в дальнейшем. Вам нужно и то, и другое.

например. Что, если кто-то обновит код веб-сайта в будущем и нарушит проверку? или кто-то напишет сценарий для автоматизации ввода данных, минуя ваш веб-интерфейс, всю его проверку?

Я повторю это еще раз. Вам нужно и то, и другое.

0
ответ дан 4 December 2019 в 22:26
поделиться

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

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

Когда дело касается бизнеса и продаж, это не только украшение. ;) Окупаемость того стоит.

0
ответ дан 4 December 2019 в 22:26
поделиться

Легко.

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

Конечно, вам придется сделать и то, и другое. Пользователи хотят этого, ваши клиенты хотят этого, и, честно говоря, вы думаете, что после отправки сообщения об ошибках php постоянно появляются.

Я не думаю, что аргумент в пользу необходимости кодирования дополнительных файлов .js, которые, по-видимому, отнимут ваше время / бюджет, имеет какое-то значение.Там так много библиотек и скриптов, что любой из них позволит вам в кратчайшие сроки настроить проверку дискотеки. Однако не стоит увлекаться раздачей конфет для глаз. Проверка .js просто поможет. Не впечатлять.

0
ответ дан 4 December 2019 в 22:26
поделиться

... я думаю, что вы также сохраняете свою карму в чистоте, когда сотни или тысячи ваших пользователей не хотят, чтобы вы сгорели в аду за то, что заставили их заполнить 5-7 полей (с текстовым полем), чтобы их проинформировали на следующей странице они ошиблись в своем электронном письме, поэтому им приходится начинать все сначала: D я не отнимаю много времени, чтобы включить javascript, я говорю, что максимум 1-2 минуты для 1 формы. и это экономит много нервных клеток моих пользователей. будь гуманистом! люблю своего соседа!))

0
ответ дан 4 December 2019 в 22:26
поделиться

PHP работает на стороне сервера, javascript запускается на стороне клиента. Вы не хотите, чтобы ваш сервер обрабатывал форму, когда вы можете заставить клиентский компьютер сделать это. Кроме того, это экономит пропускную способность.

-9
ответ дан 4 December 2019 в 22:26
поделиться

Суть проверки JavaScript (если она доступна) заключается в том, что она улучшает взаимодействие с пользователем. Обращение к серверу требует загрузки страницы и связанного с ней раздражающего мерцания при перерисовке. Проверка в коде JavaScript позволяет отображать сообщение без всего этого.

При этом проверка на стороне сервера по-прежнему требуется, поскольку JavaScript не всегда доступен (NoScript довольно популярен) и потому, что злонамеренный пользователь будет обходить JavaScript.

0
ответ дан 4 December 2019 в 22:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: