Beïndruk u webbesoekers met intydse vormvalidering

aanlyn vorm

Die eerste indruk wat u gewoonlik as gebruiker van 'n webtoepassing het, is wanneer u 'n webvorm invul. Ek is verbaas oor die aantal webvorms wat nie geldig is nie, of wat wag totdat u die inhoud van die vorm indien voordat u vertel watter probleme u kan ondervind.

My vingerreël is dat alles wat nie gevalideer word nie, ondersteun word. Alles wat gevalideer kan word voordat die vorm ingedien word, moet wees. Met die aanbreek van Ajax kan u selfs data teen u databasis valideer voordat u dit indien. Moenie die lui roete kies nie - gebruikers waardeer die hulp!

Hier is 'n paar voorbeelde:

  1. E-pos adresse - Ek gee nie om vorms waarmee u u e-posadres twee keer invul om dit te bekragtig nie, maar die feit dat dit u nie vertel of dit ooreenstem of nie, is onverskoonbaar.
  2. Wagwoorde - As u my twee keer 'n wagwoord gaan tik, moet u seker maak dat die waardes dieselfde is voordat u die vorm stuur.
  3. wagwoord sterkte - As u 'n sekere wagwoordsterkte benodig (kombinasie van alfanumerieke karakters of letters), moet u my terugvoer gee terwyl ek my wagwoord intik. Moet nie wag totdat ek ingedien het voordat ek vir my gesê het dat dit misluk het nie.
  4. Datums - As u die datum in am / d / yyyy-formaat wil hê, laat my toe om die inligting in 'n enkele veld in te voer deur die waardes in te tik en op die regte manier te formateer. As u voorste nulle wil hê, plaas dit agterna. Dit is goed om een ​​formaat te vertoon en 'n ander in u databasis te stoor.
  5. Vandag se datum - Vul dit vir my in! Waarom vra u my om die datum in te vul wanneer u dit reeds weet ?!
  6. datum formaat - As u 'n internasionale aansoek het, kan u 'n datumformaat instel op grond van die internasionalisering van u aansoek. Natuurlik is dit goed om 'n opsie te hê vir gebruikers om die opsie te ignoreer en hul eie te kies.
  7. Nommers vir maatskaplike sekerheid - dit is redelik eenvoudig om 'n javascript by te voeg wat outomaties van veld na veld spring of programmaties 'n streep tussen waardes plaas.
  8. telefoonnommers - Met inagneming van internasionalisering, kan hierdie tipe velde ook vereenvoudig word deur die telefoonnommer in die koppelvlak te formateer, maar dit in 'n ander formaat op te slaan wat doeltreffend is vir u back-end. Moenie dat gebruikers tussen hakies, spasies en strepies tik nie.
  9. Maksimum tekslengte - as u die aantal karakters wat in u databasis gestoor is, beperk, MOENIE my soveel karakters intik nie! Dit vereis nie eens moeilike validering nie ... dit is net 'n instelling in die teksboks.
  10. Minimum tekslengte - as u 'n minimum tekslengte benodig, moet u alarm maak totdat ek genoeg karakters het.

Hier is 'n voorbeeld van 'n wagwoordsterkte-funksie van Geek Wysheid:

Tik die wagwoord in:

UPDATE: 10/26/2007 - Ek het 'n netjiese bron gevind met 'n JavaScript-biblioteek wat beskikbaar is vir aflaai vorm validering, genaamd LiveValidation.

16 Comments

  1. 1

    Ek stem saam dat dit wonderlike kenmerke vir vorms is, maar om te sê dat dit "onverskoonbaar" is om nie 'n javascript-bekragtiging aan die voorkant uit te voer nie, is 'n meer persoonlike mening. Ek is mal daaroor om in javascript te werk, en het 'n paar mooi netjiese redigeermaskers geskryf om van die dinge waaroor jy praat te doen, maar baie van hulle is ver van triviaal, en baie van die javascript-vorm valideringspakkette daar buite het 'n aantal groot gate. Nie almal sal die tyd spandeer in die duplisering van hul agterkant-validering met (meer dikwels as nie) meer komplekse voorkant-javascript-validering nie.

    Goeie punte, maar beslis nie iets wat elke aanlyn vorm na my mening “nodig” nie.

  2. 2

    Die wagwoordkontroleerder is relatief stukkend. Enige wagwoord is goed genoeg as dit lank is.

    voorbeeld:

    Is dit regtig 'n middelmatige wagwoord?

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

  3. 4

    Vir my is die beste vormvalidering wanneer jy die gebruiker die indruk gee van 'n kliëntkant-validering terwyl dit AJAX/Server-kant-validering is.
    U hoef eenvoudig 'n gebeurtenishantering (insleutel, vervaag, klik, ens ...) aan u vormelemente te heg wat die hele vorm via AJAX na die bediener plaas, wat 'n "kontroleer"-funksie aanroep wat die ooreenstemmende foutboodskappe terugstuur (hierdie wagwoord is ook eenvoudig, daardie datum is in verkeerde formaat, ens...)
    Wanneer die gebruiker uiteindelik die vorm plaas deur op 'n indien-knoppie te klik, kan jy steeds die "check" bedienerkantfunksie gebruik om 'n laaste keer die vorm te valideer voordat die data in 'n databasis of 'n ander proses ingevoeg word.
    Op hierdie manier is gebruikers tevrede met die onthego-validering EN ontwikkelaars is tevrede met slegs bedienerkant-valideringsontwikkeling.

    • 5
      • 6

        Nie so vinnig nie Doug – ek stem saam met jou oorspronklike uitgangspunt dat hierdie nuttige kenmerke, soos die formatering van 'n SSN on the fly, onbenullig is. En dis lui om net 'n boodskap te plaas dat dit verkeerd is, wanneer jy dit kan regmaak sonder om na die formaat te raai.

        Ek stem egter ook saam met Nicolas oor die gebruik van Server Side-logika in samewerking met AJAX.

  4. 7

    Jou titel sê "Beïndruk jou vriende ...", maar jy versuim om my te beïndruk met hierdie 2 minute, gebel in die pos.

    Skryf jou titel oor (te misleidend, laat mens dink daar is voorbeelde en praktyke wat bespreek word).

    As mense dit nie reeds in hul vorms doen nie, dan leer hulle net of die vorm is nie belangrik genoeg om validering te gebruik nie.

    Regte webprogrammeerders weet dit reeds en doen dit.

    • 8

      Jay,

      Jammer oor dit! My punt was beslis nie om ontwikkelaarterugvoer te gee nie – ek het regtig uit die oogpunt van 'n produkbestuurder gekom. Ek stem saam met jou – maar dis interessant dat sommige ander ontwikkelaars dit nie doen nie! Ek dink dit is jammer.

      Dankie dat jy die tyd geneem het!
      Doug

  5. 9

    Ek stem heeltemal saam dat die validering 'n noodsaaklike komponent van enige aansoek is. As 'n spanleier vind ek gewoonlik dat ek kode terugstuur om "klaar" te wees om redes soos ontbrekende validasies of die beperking van teksinvoerlengtes.

    Vir die meeste dinge waaraan ek werk, vind ek dit neem ongeveer 50% van die tyd om iets te laat werk, onder normale omstandighede en as gebruikers die stelsel gebruik soos ek dit bedoel het. Die ander 50% van die ontwikkelingstyd kom daarvan om hul insette na te gaan, te verseker dat data-integriteit gehandhaaf word, en om die vormvelde nie toelaat dat kwaadwillige data ingevoer word nie.

    Ek het 'n plasing geskryf oor hoe ek InputVerifiers in my hava swing-toepassings gebruik, en wys hoe ek 'n e-pos teksveld verifieer. Die gereelde uitdrukking wat ek gebruik is maklik veranderbaar om telefoonnommers, poskodes, SSN'e, ​​ens.

    My blogpos is by http://timarcher.com/?q=node/36

    Goeie skrywe Doug!

  6. 10

    Ek stem saam. Wagwoorde is baie belangrik en moet ernstig opgeneem word. Ek dink dit is net normaal dat byna alle vorms die wagwoord twee keer tik, maar om nie die geldigheid van die twee wagwoorde te wys nie, wys dat dit nie ernstig oorweeg word nie.

  7. 11

    Ek stem saam dat kliëntbekragtiging 'n baie gebruikersvriendelike kenmerk kan wees. Dit is egter belangriker om seker te maak dat die validasies self eintlik sin maak.

    Jy het 'n briljante voorbeeld verskaf van hoe validering gebruikers kan mislei en, erger nog, hulle van ons webwerf kan wegdryf:

    Geek Wisdom se wagwoordsterkte-bekragtiging van oorweeg tZhKwnUmIss om 'n swak wagwoord te wees. Dit is nie net 'n heeltemal sterk wagwoord nie, maar dit sal ook gebruikers vervreem omdat dit hulle die wanindruk gee dat dit op een of ander manier onseker sal wees om by jou werf aan te meld met hierdie wagwoord.

    Dit sal baie beter (en makliker) wees om gebruikers eenvoudig deur te dui dat 'n goeie wagwoord minstens ses karakters lank is en beide syfers en letters moet bevat.

    Ander twyfelagtige validasies sluit in gebruikersname wat 'n sekere minimum lengte benodig of nie spasies mag bevat nie. Wat is fout met die gebruikersname X, john doe, of selfs #*!§? Ek kan dit hanteer.

  8. 12

    Ek stem saam met jou. Sommige vorms lyk goed, maar dit bied nie goeie bekragtiging nie. Persoonlike inligting word gegee en dit is net reg om dit ernstig op te neem net soos enige besigheidsvorms in hardekopie.

  9. 13
  10. 14
  11. 15

    Ek vind dit 'n bietjie amusant dat jy 'n plasing plaas oor die goedheid om intydse vormvalidering te verskaf, en tog, jou kommentaarvorm onderaan die plasing verskaf niks hiervan nie ...

    Ek besef dat jy WordPress gebruik om jou gedagtes op die internet te blog, maar dalk is dit ook nie so 'n slegte idee om te verseker dat jy dit wat jy preek, beoefen nie. 🙂

    Goeie plasing, terloops, al stem ek nie noodwendig saam met alles wat jy geskryf het nie.

    • 16

      Doh! Jy het my gepluk, Amanda! Ek wens ek het tyd gehad om beter vormvalidering te doen en dit in WordPress te integreer. Ek hou veral van die Adobe Spry valideringsraamwerk en sal graag wil sien dat iemand die twee integreer!

      Dankie! (En ek waardeer altyd dat daar veelvuldige menings oor enige onderwerp is).
      Doug

Wat dink jy?

Hierdie webwerf gebruik Akismet om spam te verminder. Leer hoe jou opmerking verwerk is.