120 likes | 226 Views
Provera korisni č ki unetih podataka. Web forme i WPF forme su sli č ne, ali ima i su š tinskih ra z lika Osnovna razlika je u tome da se kod web formi prikaz vrši u browser-u, dok se kôd aplikacije izvršava na serveru.
E N D
Proverakorisnički unetih podataka • Web forme i WPF forme su slične, ali ima i suštinskih razlika • Osnovna razlika je u tome da se kod web formi prikaz vrši u browser-u, dok se kôd aplikacije izvršava na serveru. • Samim tim je mnogo jednostavnije da se vrši provera unetih podataka na WPF formi kod desk top aplikacija, kada se kôd za proveru podataka može jednostavno pozvati i izvršiti na lokalnom računaru • Ako je kod web forme potrebno izvršiti neku složeniju proveru unetih podataka, neophodno je da se podaci sa forme preko mreže pošalju na web server, i da se na serveru izvrši provera podataka • Rezultat provere se preko mreže šalje nazad da bi se predočio korisniku
Provera podataka u web browser-u • Jednostavnija provera podataka na web formi koja ne podrazumeva složenu proveru odnosa – konzistentnosti između unetih podataka može u potpunosti da se realizuje na samoj web formi, bez slanja podataka web serveru • Takva provera se naravno vrši u samom browser-u korišćenjem Java Script koda. • Java Script kôd se automatski generiše na serveru, a ako je u pitanju web browser koji ne podržava Java Script, onda se provera vrši na serveru. Nikakvo dodatno programiranje nije potrebno, sve radi automatski
ASP.NET kontrole za validaciju - proveru • U ASP.NET –u postoje sledeće kontrole za automatsku proveru podataka: • RequiredFieldValidator se koristi za proveru da je korisnik uneo podatke u kontrolu • CompareValidator se koristi za poređenje unete vrednosti sa nekom konstantnom vrednošću, vrednošću u nekoj drugoj kontroli ili sa vrednosti iz baze podataka • RangeValidator se koristi za proveru da li se uneti podatak nalazi u nekom intervalu vrednosti • RegularExpressionValidator se koristi za proveru da li je forma unetog izraza odgovarajuća, na pr. da li odgovara formatu telefonskog broja ili slično • CustomValidator omogućava definisanje specifične provere od strane korisnika • Više različitih pomenutih kontrola se može koristiti za kombinovanu proveru jednog podatka • ASP.NET web forme po default-u proveravaju da li sadržaj unetih podataka nije možda potencijalno opasan jer sadrži html kod kojim se hoće zloupotreba web forme • Sve navedene kontrole podrazumevano rade u browser-u preko Java Script-a, mada se ovo ponašanje može promeniti, tako da se provera odvija na serveru
Implementacija klijentske validacije • Kontrole za validaciju podataka na web strani se u VS 2008 nalaze u Toolbox-u u grupi Validation • RequiredFieldValidator najbitnija svojstva: • ControlToValidate property određuje kontrolu koja će se proveravati – ID kontrole • ErrorMessage property određuje poruku koja će se prikazati kada se ne ispunjava uslov koji proverava data kontrola • Kada, u kom trenutku se ispisuje ErrorMessage ? • Java Script na web strani uzrokuje ispis u dva osnovna slučaja i to kada je prethodno obrisan tekst i kada se napušta kontrola – gubi fokuskontrole, kao i pri pokušaju slanja na server, a kontrola je prethodno obrisana
Ispis poruke kod validacije • Provera se ne dešava baš uvek pri pokušaju slanja na server • Pritisak na dugme izaziva proveru, i podaci se u tom slučaju ne šalju na server • Podaci se šalju na server tek kada se sve greške isprave • Slanje na server pritiskom – promenom radio dugmeta – check box, može da uzrokuje slanje na server, ali onda ne dolazi do provere • Promena radio dugmeta uzrokuje slanje na server i poništavanje poruke provere
RangeValidator control • RangeValidator control proverava da li su uneti podaci u određenom opsegu vrednosti - range • ControlToValidate property je takođe potrebno postaviti na vrednost ID kontrole koja se proverava • ErrorMessage property sadrži tekst koji se ispisuje u slučaju greške • Type property je tip podatka koji se proverava i može biti String, Integer, Double, Date,i Currency. • MaximumValue i MinimumValue svojstva imaju vrednosti zadatih granica dozvoljenog opsega • Ponašanje kontrole je slično kao i za RequiredFieldValidator
Klijent i server provera podataka • Podrazumevano, provera se obavlja na klijentu – ASP.NET generiše Java Script kôd • Ukoliko browser ne podržava Java Script kôd, onda se automatski provera vrši na serveru posle slanja stranice na server • Ali, postoji i mogućnost da se eksplicitno isključi provera na klijentu čime se provera automatski prebacuje na server, posle slanja stranice serveru • Ako se postavi vrednost za Text property, onda se ta vrednost ispisuje umesto vrednosti u ErrorMessage property
ValidationSummary control • ValidationSummary controlsluži za prikaz svih poruka dobijenih od raznih kontrola za proveru • ShowSummary propertyodređuje da li će se pojaviti ispis ili ne • Ako se u Text property kontrola za validaciju postavi *, onda se umesto poruke za grešku iz ErrorMessage property ispisuje * • Poruke za greške sa svih kontrola za proveru se u ValidationSummary controlprikazuju pri pokušaju slanja stranice na server, pritiskom na dugme • ShowMessageBox property omogućava prikaz poruka u message box-u