W niedawnym wpisie pokazałem zgrubnie mój walidator formularzy yFormValidator. W tym wpisie pokażę dokładniej możliwości tego bardzo prostego frameworka walidacyjnego.

Jeśli nie interesuje Cię część teoretyczna, skocz do praktyki.

Predefiniowane klasy

yFormValidator posiada kilka z góry zdefiniowanych klas służących do walidacji. Są to:

  • ‘not empty’ – niepusty ciąg znaków
  • ‘alphanumeric’ – litery, cyfry oraz podkreślenie, bez białych znaków
  • ‘integer’ – liczby całkowite (dodatnie i ujemne)
  • ‘decimal’ – liczby rzeczywiste (dodatnie i ujemne)
  • ‘date’ – data w formacie dd/mm/rrrr, od roku 1600 [uwzględnia lata przestępne, liczby dni w miesiącach itp.]
  • ’email’ – adres e-mail

Continue reading

W poprzednim wpisie o walidacji formularzy pokazałem, jak sprawdzać dane za pomocą wyrażeń regularnych. Tym razem zaprezentuję prosty obiekt, który wykona całą pracę za nas. Jedyne co trzeba zrobić to określić w odpowiednim obiekcie, jakie pola w formularzu powinny być walidowane oraz wg jakich zasad.

Na początek

Continue reading

Wyrażenia regularne są to wzorce, które opisują łańcuch symboli [wikipedia].

Za pomocą wzorców regularnych możemy sprawdzić, czy danych ciąg znaków “pasuje” do naszego wzorca, np. mając listę ludzi:

  1. Jan Kowalski
  2. Zdzisław Nowak
  3. 123312 23232^%^%$
  4. Janko Muzykant

Od razu widzimy, że pozycja 3 nie pasuje. Dlaczego? Przecież porównując “Jan Kowalski” == “Zdzisław Nowak” także otrzymamy `false’. Otóż, wszystkie pozostałe pozycje na liście spełniają pewne kryteria jakie sobie założyliśmy:

<wzorzec>{numer}{kropka}{spacja}{imię}{spacja}{nazwisko}{enter}</wzorzec>

JavaScript posiada wbudowane mechanizmy obsługi wyrażeń regularnych (ang. regular expressions, w skrócie regex/regexp).

W tym wpisie pokażę, jak za pomocą wyrażeń regularnych walidować dane przekazywane przez użytkownika w formularzu.Continue reading

Walidacja danych podanych przez użytkownika w formularzu to nic innego jak sprawdzenie, czy wszystkie wymagane pola zostały wypełnione, a następnie sprawdzenie czy ich wartość ma odpowiednią postać, np. numery telefonów, kod pocztowy, adres e-mail.

Wydaje się to dosyć proste. Jednak kiedy to wywołać?

Potencjalne rozwiązania

Continue reading

Prawie na każdej stronie internetowej występują formularze. Są bardzo ważnym i potrzebnym elementem strony – pozwalają na pobieranie danych od internauty. Formularze są wszędzie – system komentarzy, fora internetowe, webmaile, twitter itp. Zamierzam w  tym i kilku następnych wpisach pokazać jak można (bo to, że trzeba jest bezdyskusyjne) walidować dane pobierane przez formularze.

Po co walidować?

Praktycznie na każdej stronie dzisiaj wymagana jest pobieranie w jakiś sposób danych od użytkownika. Automatyzacja pobierania danych z wykorzystaniem formularzy dostępnych na stronie daje z jednej strony święty spokój administratorom serwisów, z drugiej jednak pozwalają na różnego rodzaju ataki. Dodatkowym powodem, dla którego warto walidować dane jest pomoc użytkownikowi – skoro podaje swój e-mail, to być może jednak chciałby, aby podesłać mu jakąś informację. Jeśli poda zły adres, [np. zapomni zapisać “@domena.pl”] mail nie dojdzie.

Zatem walidacja jest dobra dla wszystkich :).Continue reading

Bardzo często jakiś wyjątek jest rzucany za każdym razem tak samo. Mam na myśli identyczną konstrukcję warunkową. Czy nie lepiej jest wtedy przenieść logiki do klasy wyjątku, skoro tak bardzo jest z nią “zżyta”. Oto moje rozwiązanie.

Na początek

Prosty kod

Zobaczmy kod, który na pewno często można spotkać:
Continue reading