Walidacja formularzy ., Czyli Ja kontra klasy , pierwsze starcie . |
Walidacja formularzy ., Czyli Ja kontra klasy , pierwsze starcie . |
2.06.2011, 15:48:17
Post
#1
|
|
Grupa: Zarejestrowani Postów: 314 Pomógł: 44 Dołączył: 12.11.2010 Skąd: UK Ostrzeżenie: (0%) |
Witam , dzisiaj rano postanowiłem zagłębić się troszeczkę w klasy php , wcześniej wiedziałem tylko jak używać gotowych więc trochę poczytałem i spróbowałem własnych sił z klasą która przejrzy za mnie dane z formularza. W sumie jest to bardziej funkcja w formie klasy niż profesjonalna klasa , ale jak pisałem dopiero zacząłem pisanie klas . Dobra przejdźmy do kodu :
Do użycia klasy potrzebne będą nam dwie tablice z danymi , pierwsza która otrzymujemy z formularza i druga w której określamy właściwości naszych wartości z formularza . Ja w przykładzie posłużę się tymi dwoma Pierwsza tablica to mój sfabrykowany formularz a druga to właściwości dla niego . Oczywiście dla przykładu wprowadziłem błąd w każdym z nich , teraz przejdę do budowy tablicy boundaries(ograniczenia) , tablica ta składa się z pomniejszych tablic które noszą nazwy komórek z formularza , dla każdej z pomniejszych tablic dostępne są dosyć oczywiste opcje a mianowicie Kod lenght - długość wartości , podana jako min-max czyli np "3-15" Przykładowe użycie klasy : allowed_characters - dozwolone znaki , po prostu wypisujemy znaki po kolei . type - typ wartości , dostępne wartości to : numbers,e-mail ,ip,ipv4,ipv6 regex - tutaj podajemy wyrażenie regularne Jak już pisałem dwa razy jest to moja pierwsza klasa więc : A ) Krytykujcie B ) Sugerujcie C ) Doradzajcie (Klasa nie jest żadnym arcydziełem , ba pewno znajdziecie masę błedów , ale wolałbym jakbyście nie wrzucali tego na inne fora albo używali gdziekolwiek podając za swoje dzieło ... a poza tym to róbcie z tym co chcecie ) Ten post edytował nekomata 2.06.2011, 15:48:54 |
|
|
3.06.2011, 15:33:46
Post
#2
|
|
Grupa: Zarejestrowani Postów: 320 Pomógł: 29 Dołączył: 3.04.2010 Ostrzeżenie: (20%) |
|
|
|
4.06.2011, 03:16:47
Post
#3
|
|
Grupa: Zarejestrowani Postów: 314 Pomógł: 44 Dołączył: 12.11.2010 Skąd: UK Ostrzeżenie: (0%) |
Mhmmm , ogólnie to napisałem ten temat właśnie po takie porady , chce napisać klasę która jest najbardziej poprawna ze standardami (jeśli gdzieś by była lista takowych to byłbym wdzięczny za link) .
Obejrzałem sobie tą klasę Crozin'a jedyna rzecz która mi się "nie spodobała" to to że obiekt klasy był wrzucany za każdym razem , moim celem było 'uprościć' formularze a to trochę mija się z celem. Dlatego przepisałem te klasę (użycie nadal jest takie samo) jednak za każdym razem klasa jest wywoływana automatycznie , napiszcie co myślicie o takowym rozwiązaniu i czy takie rozwiązanie jest w ogóle poprawne , Thx. (zostawiłem przykładowe dane itd do testowania.) Ten post edytował nekomata 4.06.2011, 07:28:38 |
|
|
4.06.2011, 07:05:32
Post
#4
|
|
Grupa: Zarejestrowani Postów: 690 Pomógł: 92 Dołączył: 6.02.2011 Ostrzeżenie: (0%) |
Jak dobrze wiem, klasy powinny wyrzucać wyjątkami, nie die(). Potem, jak wejdę, dokładnie to przejrzę, to mi się tylko rzuciło. Aha i coś - zrób nie będziesz musiał wyrzucać wyjatków, php się tym zajmie Ten post edytował mat-bi 4.06.2011, 07:07:12 |
|
|
4.06.2011, 07:14:59
Post
#5
|
|
Grupa: Zarejestrowani Postów: 314 Pomógł: 44 Dołączył: 12.11.2010 Skąd: UK Ostrzeżenie: (0%) |
@mat-bi Dzięki za spostrzeżenia , poprawione i zapamiętane liczę na więcej takich "wytyczeń".
|
|
|
14.08.2011, 06:51:03
Post
#6
|
|
Grupa: Zarejestrowani Postów: 126 Pomógł: 5 Dołączył: 17.07.2011 Ostrzeżenie: (0%) |
p.s. a do obsługi błędów nie mógłbyś użyć specjalnej klasy ? Ten post edytował cer98 14.08.2011, 12:59:04 |
|
|
Wersja Lo-Fi | Aktualny czas: 21.05.2024 - 14:58 |