Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> MVC - formularz, filtracja, walidacja, autoryzacja..., gdzie to wszystko podziać?
Luneth
post
Post #1





Grupa: Zarejestrowani
Postów: 95
Pomógł: 7
Dołączył: 16.07.2007
Skąd: Gorzów Wielkopolski

Ostrzeżenie: (0%)
-----


1. Kontroler ustala rodzaj żądania:
a) POST -> model przeprowadza walidację(sprawdza czy wartości z $_POST znajdują się w bazie): jeśli prawda, model loguje użytkownika (zdefiniowanie zmiennych sesyjnych) -> widok wyświetla stronę autoryzacji z nazwą zalogowanego użytkownika i hiperłączem do wylogowania; jeśli fałsz, kontroler definiuje zmienną z błędem, widok wyświetla formularz logowania z wygenerowanym błędem, który został mu przekazany
b) GET -> określenie żądania: żądanie wylogowania -> model wylogowuje użytkownika, niszczy sesję usera [sesje oparte na mysql], kontroler robi przekierowanie; żądanie domyślne: widok wyświetla formularz logowania

Czy jest to zgodne z MVC? Mam pełno wątpliwości co do formularzy a zwłaszcza zastanawia mnie czy to model ma filtrować wprowadzane zmienne (trim() itd) a następnie je walidować.

Ten post edytował Luneth 10.08.2010, 21:19:48
Go to the top of the page
+Quote Post
Diablos
post
Post #2





Grupa: Zarejestrowani
Postów: 165
Pomógł: 6
Dołączył: 17.06.2005

Ostrzeżenie: (0%)
-----


Zdecydowanie nie.
Model nie jest odwzorowaniem części decyzyjnej tylko logiki dostępu do danych.
Model nie powinien wylogowywać uzytkownika, a już napewno nie powinien niszczyc sesji. Powinien to robic kontroler z co najwyzej użyciem Modelu (w przypadku gdy Model ten odwzorowuje dane sesyjne).

Model nie powinien również nic filtrować. Od filtrowanie są filtry, które powinny zostać nałożone na dane w kontrolerze.
Co masz na mysli mowiac o walidowaniu? Walidowanie to sprawdzanie poprawności danych z dopuszczalna trescia i zajmują sie tym walidatory w kontrolerze nalozone na formularz.
Go to the top of the page
+Quote Post
Luneth
post
Post #3





Grupa: Zarejestrowani
Postów: 95
Pomógł: 7
Dołączył: 16.07.2007
Skąd: Gorzów Wielkopolski

Ostrzeżenie: (0%)
-----


Nie wiem czy to nie jest naginanie teorii, ale część decyzyjna pozostaje w kontrolerze, tylko metody od tego znajdują się w modelu - ale powinny znajdować się jednak w kontrolerze, tak? (IMG:style_emoticons/default/smile.gif) Co bardziej zabawne miałem zrobione tak jak Ty mówisz, zanim przyjąłem tą (jak teraz się okazuje) mylną koncepcję (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
Diablos
post
Post #4





Grupa: Zarejestrowani
Postów: 165
Pomógł: 6
Dołączył: 17.06.2005

Ostrzeżenie: (0%)
-----


Metody mogą się znajdować części Modelu, ale tez nie konkretnie w samym modelu odwzorowującym dane tylko w jakiejs wartstwie posredniej miedzy Kontrolerem i Modelem czyli np. Service. Mimo wszystko Service ten odpowiada jedynie za wybranie danych i przekazanie ich do Kontrolera, a cała reszta odbywa sie w kontrolerze.

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.09.2025 - 01:18