Zadivite svoje web posjetitelje provjerom obrazaca u stvarnom vremenu

online obrazac

Prvi dojam koji obično imate kao korisnik web-aplikacije jest kada ispunite web-obrazac. Zadivljen sam brojem web obrazaca koji nemaju valjanost ili koji čekaju da predate sadržaj obrasca prije nego što vam kažu koje biste probleme mogli imati.

Moje pravilo je da je podržano sve što nije provjereno. Sve što se može provjeriti prije predaje obrasca mora biti. Pojavom Ajaxa čak možete provjeriti podatke prema svojoj bazi podataka prije slanja. Ne birajte lijenu rutu - korisnici cijene pomoć!

Evo nekoliko primjera:

  1. E-mail adrese - Ne smetaju mi ​​obrasci zbog kojih dva puta popunjavate svoju adresu e-pošte da biste ih provjerili, ali činjenica da vam ne kažu odgovaraju li ili nisu odgovarajuća je neoprostiva.
  2. lozinke - Ako ćete me natjerati da dvaput upišem lozinku, provjerite jesu li vrijednosti iste prije objavljivanja obrasca.
  3. Snaga lozinke - Ako vam je potrebna određena snaga lozinke (kombinacija alfanumeričkih znakova ili velikih slova), pružite mi povratne informacije dok unosim lozinku. Nemojte čekati da pošaljem prije nego što mi kažete da nije uspjela.
  4. Termini - Ako želite datum u formatu am / d / yyyy, dopustite mi da unesem podatke u jedno polje upisivanjem tih vrijednosti i odgovarajućim oblikovanjem. Ako želite vodeće nule, stavite ih nakon. U redu je prikazati jedan format, a drugi spremiti u bazu podataka.
  5. Današnji datum - Ispunite to za mene! Zašto tražite da ispunim datum kad to već znate ?!
  6. Format datuma - Ako imate međunarodnu prijavu, možete zadati format datuma na temelju internacionalizacije vaše prijave. Naravno, dobro je imati mogućnost za korisnike da je ponište i odaberu svoju.
  7. Brojevi socijalnog osiguranja - prilično je jednostavno dodati neki javascript koji automatski skače s polja na polje ili programski stavlja crticu između vrijednosti.
  8. telefonski brojevi - uzimajući u obzir internacionalizaciju, ove se vrste polja također mogu pojednostaviti oblikovanjem telefonskog broja u sučelju, ali spremanjem u drugi format koji je učinkovit za vašu pozadinu. Neka korisnici ne upisuju zagrade, razmake i crtice.
  9. Maksimalna duljina teksta - ako ograničite broj znakova pohranjenih u vašoj bazi podataka, NE dopustite mi da upišem toliko znakova! Ne zahtijeva čak ni tešku provjeru valjanosti ... to je samo postavka u okviru za tekst.
  10. Minimalna duljina teksta - ako vam je potrebna minimalna duljina teksta, oglašavajte alarm dok ne dobijem dovoljno znakova.

Evo primjera funkcije Snaga lozinke iz Geek Mudrost:

Upišite lozinku:

AŽURIRANJE: 10. - Pronašao sam uredan resurs s JavaScript bibliotekom dostupnom za preuzimanje za provjera valjanosti obrasca, koja se naziva LiveValidation.

16 Komentari

  1. 1

    I agree those are great features for forms, but saying that it is “inexcusable” to not do perform front end javascript validation is a more of an personal opinion. I love working in javascript, and have written some pretty neat editmasks to do some of the things you talk about, but a lot of them are far from trivial, and many of the javascript form validation packages out there have a number of big holes. Not everyone will invest the time into duplicating their back end validation with (more often than not) more complex front end javascript validation.

    Dobre točke, ali definitivno nije nešto što svaki mrežni obrazac "treba" po mom mišljenju.

  2. 2

    Provjera lozinke je relativno slomljena. Svaka lozinka dovoljno je dobra ako je duga.

    Primjer:

    Je li ovo doista osrednja lozinka?

    f46dffe6ff4ffgdfgfjfgyu656hfdt74tyhdtu5674yfgh6uhhye45herdhrt64684hythdfth54y54348fgdcvzse8cn984v3p4m6vq98476m3wuw89ewfucsd8fg67s4v8tw76u340m6tver7nt+s89346vs+0em9u+s+09hrtuhss586ysvne4896vb4865tbv089rt++

  3. 4

    Za mene je najbolja provjera valjanosti kada korisniku ostavite dojam provjere na strani klijenta, dok je to provjera valjanosti AJAX-a / poslužitelja.
    Jednostavno morate elementima obrasca priložiti neko rukovanje događajima (keyup, blur, click, itd ...) koji objavljuju cijeli obrazac putem AJAX-a na poslužitelj, pozivajući se na funkciju "check" koja vraća odgovarajuće poruke o pogrešci (i ovaj passowrd je previše jednostavno, taj je datum u pogrešnom formatu itd.)
    Kada korisnik konačno objavi obrazac klikom na gumb za slanje, i dalje možete koristiti funkciju "provjeri" na strani poslužitelja za posljednju provjeru valjanosti obrasca prije umetanja podataka u bazu podataka ili neki drugi postupak.
    Na ovaj način korisnici su zadovoljni daljnjom provjerom valjanosti, a programeri su zadovoljni razvojem provjere valjanosti samo na strani poslužitelja.

    • 5
      • 6

        Ne tako brzo Doug - Slažem se s vašom izvornom premisom da su ove korisne značajke, poput formatiranja SSN-a u letu, trivijalne. I lijeno je samo objaviti poruku da je pogrešna, kad to možete popraviti bez potrebe za pogađanjem formata.

        Međutim, također se slažem s Nicolasom oko upotrebe logike na poslužitelju zajedno s AJAX-om.

  4. 7

    U vašem naslovu stoji "Impress Your Friends ...", ali ne uspijevate me impresionirati s ove 2 minute, nazvanom u postu.

    Prepišite svoj naslov (previše zavaravajuće, natjera nekoga da pomisli da se raspravlja o primjerima i praksama).

    If people are not doing this already in their forms, then they are just learning or the form is not important enough to use validation.

    Pravi web programeri to već znaju i čine.

    • 8

      Jay,

      Sorry about that! My point was definitely not to provide developer feedback – I really was coming from the point of view of a Product Manager. I agree with you – but it’s interesting that some other developers don’t! I think that’s unfortunate.

      Hvala što ste odvojili vrijeme!
      Doug

  5. 9

    Potpuno se slažem s tim da je provjera valjanosti nužna komponenta svake prijave. Kao voditelj tima, obično nađem da šaljem kôd natrag da bude „gotov“ iz razloga kao što su nedostajanje provjera valjanosti ili ograničenje duljine unosa teksta.

    Za većinu stvari na kojima radim smatram da je potrebno oko 50% vremena da se nešto pokrene, u normalnim uvjetima i ako korisnici koriste sustav onako kako sam ja zamišljao. Ostalih 50% vremena razvoja dolazi od provjere njihovog unosa, osiguravanja održavanja integriteta podataka i izrade polja obrazaca koji ne dopuštaju unos zlonamjernih podataka.

    Napisao sam post o tome kako koristim InputVerifiers u svojim hava swing aplikacijama i pokazao kako provjeravam polje za tekst e-pošte. Regularni izraz koji koristim lako se mijenja za provjeru telefonskih brojeva, poštanskih brojeva, SSN-ova itd.

    Moj post na blogu je na http://timarcher.com/?q=node/36

    Dobar zapis Doug!

  6. 10

    Slažem se. Lozinke su zaista važne i moraju se ozbiljno shvatiti. Mislim da je normalno da gotovo svi obrasci upišu lozinku dva puta, ali ne pokazivanje valjanosti dviju lozinki pokazuje da se to ne smatra ozbiljno.

  7. 11

    Slažem se da provjera valjanosti klijenta može biti vrlo korisna značajka. Međutim, važnije je osigurati da same provjere valjanosti zapravo imaju smisla.

    Dali ste sjajan primjer kako provjera valjanosti može zavesti korisnike i, što je još gore, otjerati ih s naše web stranice:

    Provjera snage zaporke Geek Wisdom iz uzima u obzir tZhKwnUmIss biti slaba lozinka. Ne samo da je ovo savršeno jaka lozinka, već će i otuđiti korisnike jer im stvara lažni dojam da će prijava na vašu stranicu pomoću ove lozinke biti nekako nesigurna.

    Bilo bi puno bolje (i lakše) jednostavno nagovijestiti korisnike da dobra lozinka ima najmanje šest znakova i da treba sadržavati i brojeve i slova.

    Ostale upitne provjere valjanosti uključuju korisnička imena koja trebaju određenu minimalnu duljinu ili ne moraju sadržavati razmake. Što nije u redu s korisničkim imenima X, john doe, ili čak # *! §? Mogu to podnijeti.

  8. 12

    Slažem se s tobom. Neki obrasci izgledaju u redu, ali ne nude dobru provjeru valjanosti. Daju se osobni podaci i ispravno ih je shvatiti ozbiljno, baš kao i sve poslovne obrasce u tiskanom obliku.

  9. 13
  10. 14
  11. 15

    Malo mi je zabavno što objavljujete o dobroti za pružanje provjere valjanosti u stvarnom vremenu, a opet, vaš obrazac za komentar na dnu posta ne pruža ništa od toga ...

    Shvaćam da koristite WordPress kako biste svoje misli objavili na Internetu, ali možda ni osiguravanje da vježbate ono što propovijedate nije tako loša ideja. 🙂

    Usput, dobar post, čak i ako se ne slažem nužno sa svime što ste napisali.

    • 16

      Doh! You busted me, Amanda! I do wish I had time to do better form validation and to integrate it into WordPress. I especially like the Adobe Spry okvira za provjeru valjanosti i volio bih vidjeti da netko integrira to dvoje!

      Thanks! (And I always appreciate that there are multiple opinions on any topic).
      Doug

Što vi mislite?

Ova web stranica koristi Akismet za smanjenje neželjene pošte. Saznajte kako se podaci vašeg komentara obrađuju.