Validacija forma
Imao sam nedavno raspravu sa kolegom u vezi validacije form-a.
Ja sam nekako navikao da validaciju polja iz form-a odradim na samo serveru pa ako je error vratim form, ako su polja ok prosledim dalje gde treba. Kolega opet radi validaciju i u klijentu (jquery) i na serveru. Kapiram da je validacija u klijentu bolja zbog user-experience, brža je, ne mora da se submituje form da bi video greške ali zavisi od JavaScript-a. Serverska validacija je sporija ali daleko sigurnija.... Šta je po vama ispravnije, best practice, šta već.... klijent, server, oba metoda...? |
Koristim istu server side validaciju i na client side preko AJAX. Zašto riješavati isti problem u 2 programska jezika.
|
Verujem da je očigledno ali serversku validaciju moraš da imaš kako god okreneš, inače si obro bostan.
Ja to gledam kao dodatni posao i sve zavisi od klijenta ako hoće da plati dodatni posao da bi povećao kvalitet aplikacije. Ali sa današnjim napretkom javascript biblioteka vreme da se tako nešto implementira i nije toliko veliko. |
Citat:
|
^Pa bolji je user experience, valjda je bolje da odmah vidi npr da je korisicnko ime zauzeto nego da to vidi nakon sto submituje sve podatke :)
Inace server side check i nakon full submita je svejedno must posto se sve te client side provere itekako mogu zaobici sa lib-ovima poput curla i sl. |
Toliko je brzo da misliš da je client side :D
|
Ako moras da biras izmedju te dve validacije postoji samo jedan odgovor, a to je: serverska validacija !
Klijentska validacija je pozeljna, a serverska obavezna. Ili mozes da imas samo jednu (serversku) ili obe, trece nepostoji. Osim ako ne pravis nesto sto bi zeleo da sutra hakujes/ili neko drugi ... Ako imas samo JS "validaciju" to nije garancija da ce podaci da stignu validni do servera, pa je onda ne bi ni nazvao validacijom nego vise ulepsavanjem web aplikacija :) Ipak po web 2.0 standardu trebalo bi imati i JS validaciju, jer je vise user frandli .... |
Najbolje je ako client-side (JS) validacija moze da se radi automatski, tj. da bude generisana na osnovu server-side validacije, tj. na osnovu meta-podataka kojima je dekorisan model.
Tako se dobije validacija na obe strane (klijent i server), ali se odrzava kod samo na jednoj strani (server). |
Ja koristim obe validacije i na serveru i na klijentu, obicno forme koje pravim nisu neke kilometarske pa mi nije tesko da napisem i js za validaciju, sa jQuery-ijem to je 5 linija koda..
|
Ovo sto kaze @degojs, pokupim pravila iz modela i na osnovu toga generisem pravila za js validaciju. Neke stvari naravno moras da proveris na serveru, tipa da li postoji email i sl., ali ne vidim smisao da cimam server dodatno za svako polje, pogotovo sto je to genericka stvar, uvek se radi isto...
|
Vreme je GMT +2. Trenutno vreme je 02:05. |
Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.