04.11.2011

Форма на проверка на Javascript – правите това правилно!

* Source text URL: http://sbpoley.home.xs4all.nl/webmatters/formval.html




При използването на Javascript за проверка на форма, има правилен път, неправилен, твърде неправилен и самоубийственно-неправилен път! За съжаление, многите сайтове използват един от неправилни пъти, има дори такви, които твърдят че това е форма на проверка на учебните пособия. Тази страница опитва да помогна хората да вървят в правилна посоката.
– Самоубийствено-неправилен път е да правя проверка само в JavaScript, а не на сървъра. Злоумишленик може да заобиколи го лесно – в зависимост от това, какво правите – може да причини ущърб за вашата база от данни. Известно, че били случаи, когато интернет-магазини произвеждат доставка на компютра на 1 $, защото нямаха проверкато от старанат на сървъра!
– Много неправилен (но всичко твърде общо) път е само, предполагам, че  ползвателя има JavaScript. Читатели, които са отключили го (има няколко хубави причини за това) или които не смятат го за достъпен, губят времето си за попълняване на форма за да увижда след това, че при натискане на бутона “Изпраща” не произлиза нищо.
– Правилен път (в резултата!) е използване на JavaScript като допълнителното оборудване за подобряване на удобство. Всички формите на заявкасе проверяват на сървъра. Ако читателят има достъп към JavaScript, първоначалното проверка се изпълня на страна на клиента, за да провери прости грешки, такви като липсваща информация или нецифрови символи в числово поле. Това означава, че читателят получава обратната връзка по-бързо отколко очакване на отговора от сървъра.
Работата е та, че Javascript проверките винаги са незадължителни. Понеже проверка трябва да бъде на сървъра  при всеки случай, глупаво е да настоява че ползвателят трябва да има JavaScript. Добавяване на JavaScript проверка трябва да помогне за някои читатели и  не пречва за други.
Говорейки това, добавяме че наистина има два правилни пъти, от които най-хубав не се използва никога!

  1. Приемливи: проверка на въведени данни при натискане на бутона “Изпраща”.
  2. По-добре, в мнозинство от случаи, особенно с големите форми: проверка на основа на поле и след това да потвърдя отнова цялата форма с натискане на бутона “Изпраща”. Това също прави го лесно за оповестяване на ползвателя в случаи, когато данни са въведени, вероятно, неверно – например, необикновени символи в адреса на електронна поща  или 1907 година на раждането.

Пример:
Ето го пример на това, как трябва да работи проверка JavaScript (обърнете внимание, че това е само демонстрационната форма; тя не е предназначена като сценарий drop-inscript, и Вие, несомненно, ще имате собствени изискванията к тя).

Виж оригиналния сайт
Image Hosted by ImageShack.us

Това наистина е същинския сценарий на сървъра, затова всичко което ще въвеждате ще бъде игнорирано в представление. Проверете работа на Javascript  включена и изключена.

Вашето име                                                                    Задължително

ok ok