Validácia vstupných dát je jedna z najdôležitejších častí každej aplikácie. Pomocou validácie máme zaručené, že dáta vstupujúce do našej aplikácie odpovedajú nastaveným pravidlám a nebudú narušovať konzistenciu našej aplikácie. Vo verzii 1.2 CakePHP prichádza s prepracovanou validáciou a my si v tomto článku podrobne vysvetlíme
Validácia vstupných dát v CakePHP - 1. časť
Validácia vstupných dát je jedna z najdôležitejších častí každej aplikácie. Pomocou validácie máme zaručené, že dáta vstupujúce do našej aplikácie odpovedajú nastaveným pravidlám a nebudú narušovať konzistenciu našej aplikácie. Vo verzii 1.2 CakePHP prichádza s prepracovanou validáciou a my si v tomto článku podrobne vysvetlíme všetky jej aspekty.
Ako motivačný príklad si predstavme situáciu, že užívateľ odosiela dáta z prihlasovacieho formulára. V danom formulári chceme určiť, že prihlasovacie meno bude minimálne 5 znakov dlhé a že heslo nebude prázdne. CakePHP takúto situáciu rieši veľmi elegantne a definovanie validačných pravidiel robí veľmi jednoduchým.
Na ukážke vyššie môžeme vidieť definovanie pravidiel pre validáciu. Príklad definuje pravidlo pre input pomenovaný login a určuje, že z daného inputu bude prijímaný vstup v podobe písmen a číslic. Definovaním takýchto pravidiel umožňujeme CakePHP automaticky zobrazovať chybové hlášky pri daných vstupných poliach v prípade, že dané pole neobsahuje očakávaný vstup a tým uľahčuje programátorovi množstvo času. V našom konkrétnom prípade by odosielanie formulára skončilo chybovou hláškou vtedy, ak by sme do daného inputu vložili znak, ktorý by nebol buď písmeno alebo číslica, a snažili by sme sa takýto formulár odoslať.
CakePHP má množstvo prednastavených validačných pravidiel a ich použitie je veľmi jednoduché. Prednastavené pravidlá nám okrem iného umožňujú kontrolovať email adresu, url, dátum a iné často používané pravidlá (všetky pravidlá si detailne predstavíme v nasledujúcich častiach textu). Na ďalšom príklade môžeme vidieť komplexný príklad, ktorý nám demonštruje možnosti validácie v CakePHP. Príklad je prevzatý z Cookbook: Data Validation
Zdroj: Ims.rockretail.com