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 moet 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 koms 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 kan invul om dit te bekragtig nie, maar die feit dat dit u nie sê of dit ooreenstem of geskik is 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 alfanumeriese 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 een 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 die datumformaat verstrek op grond van die internasionalisering van u aansoek. Dit is natuurlik 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 javaskrip by te voeg wat outomaties van veld na veld spring of programmaties 'n streep tussen waardes plaas.
  8. telefoonnommers - Met inagneming van die 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 effektief 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, laat my dan nie 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 'n uitstekende funksie vir vorms is, maar dit is 'n persoonlike opinie om te sê dat dit 'onverskoonbaar' is om nie die regte JavaScript-validering uit te voer nie. Ek is mal daaroor om in javascript te werk, en ek het 'n paar mooi netjiese redigeringsmaskers geskryf om van die dinge waaroor u praat, te doen, maar baie daarvan is verreweg nie triviaal nie, en baie van die pakkette vir validering van die javaskripvorm daar buite het 'n aantal groot gate. Nie almal sal die tyd daaraan bestee om hul agterkant-validering te dupliseer met (meer gereeld as nie) meer ingewikkelde JavaScript-validering.

    Goeie punte, maar beslis nie iets wat elke aanlynvorm na my mening "benodig" nie.

  2. 2

    Die wagwoordkontroleerder is relatief gebreek. 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 as u die gebruiker die indruk gee van 'n kliënt-validering terwyl dit AJAX / Server-validering is.
    U moet net 'n paar gebeurtenishantering (sleutel-up, vervaag, klik, ens.) Aan u vorm-elemente heg wat die hele vorm via AJAX op die bediener plaas, met 'n "check" -funksie wat die ooreenstemmende foutboodskappe oplewer (hierdie passowrd is ook eenvoudig, die datum is in die verkeerde formaat, ens ...)
    Wanneer die gebruiker uiteindelik die vorm plaas deur op 'n stuurknoppie te klik, kan u steeds die 'check' bedienerkantfunksie gebruik om die vorm 'n laaste keer te bevestig voordat u die data in 'n databasis of ander proses invoeg.
    Op hierdie manier is gebruikers tevrede met die onthego-validering EN ontwikkelaars is tevrede met die validering van die bedienerkant.

    • 5
      • 6

        Nie so vinnig nie Doug - ek stem saam met u oorspronklike uitgangspunt dat hierdie nuttige funksies, soos die opmaak van 'n SSN op die vlug, triviaal is. En dit is lui om net 'n boodskap te plaas dat dit verkeerd is, as jy dit kan regmaak sonder om die formaat te moet raai.

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

  4. 7

    U titel sê "Impress Your Friends ...", maar u kan my nie beïndruk met hierdie 2 minute nie, gebel in die pos.

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

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

    Regte webprogrammeerders weet dit al en doen dit.

    • 8

      Jay,

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

      Dankie dat u tyd geneem het!
      Doug

  5. 9

    Ek stem volkome saam dat die validering 'n noodsaaklike onderdeel van enige aansoek is. As 'n spanhoof stuur ek gewoonlik die kode terug om 'klaar' te wees om redes, soos om validasies te mis of om die lengte van die teksinvoer te beperk.

    Vir die meeste dinge waaraan ek werk, vind ek dat dit ongeveer 50% van die tyd neem om iets aan die gang te kry, onder normale omstandighede, en as gebruikers die stelsel gebruik soos ek bedoel het. Die ander 50% van die ontwikkelingstyd kom van die kontrole van hul insette, die versekering van data-integriteit en die maak van die vormvelde om kwaadwillige data in te voer.

    Ek het 'n boodskap geskryf oor hoe ek InputVerifiers in my hava-swaai-programme gebruik, en wys hoe ek 'n e-pos-teksveld verifieer. Die gereelde uitdrukking wat ek gebruik, is maklik aanpasbaar om telefoonnommers, poskodes, SSN's, ens.

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

    Goeie opskrif Doug!

  6. 10

    Ek stem saam. Wagwoorde is regtig belangrik en moet ernstig opgeneem word. Ek dink dat dit net normaal is dat byna alle vorme die wagwoord twee keer tik, maar as die geldigheid van die twee wagwoorde nie getoon word nie, kan dit nie ernstig oorweeg word nie.

  7. 11

    Ek stem saam dat kliëntvalidering 'n baie gebruikersvriendelike funksie kan wees. Dit is egter belangriker om seker te maak dat die validering self sinvol is.

    U het 'n briljante voorbeeld gegee van hoe validering gebruikers kan mislei en, erger nog, hulle van ons webwerf kan verdryf:

    Geek Wisdom se validering van wagwoordsterkte van oorweeg tZhKwnUmIss om 'n swak wagwoord te wees. Dit is nie net 'n uitstekende wagwoord nie, maar dit sal gebruikers ook vervreem omdat dit hulle die wanindruk gee dat dit op die een of ander manier onveilig is om met hierdie wagwoord aan te meld.

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

    Ander twyfelagtige validasies sluit gebruikersname in wat 'n sekere minimum lengte benodig of wat nie spasies 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 geen goeie validering nie. Persoonlike inligting word gegee en dit is net gepas om dit net soos enige besigheidsvorms in harde kopie ernstig op te neem.

  9. 13
  10. 14
  11. 15

    Ek vind dit 'n bietjie amusant dat u 'n boodskap lewer oor die goedheid vir validering van 'n realtime vorm, en tog bied u kommentaarvorm onderaan die berig niks hiervan nie ...

    Ek besef dat u WordPress gebruik om u gedagtes op die internet te blog, maar om seker te maak dat u oefen wat u verkondig, is ook nie so 'n slegte idee nie. 🙂

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

    • 16

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

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

Wat dink jy?

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