Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Walidacja w MVC
Pjotrek80
post
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 9.04.2013

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


Pytanie w sumie z kategorii początkujących ale z drugiej strony to jest OOP i na pewno więcej tutaj ludzi zajmujących się tym tematem.
Mam taką sytuację. Jest strona www z podziałem na model, widok, kontroler. Mam podstronę galeria i teraz od strony administratora dodałem mechanizm wgrywania plików na server.
w kontrolerze odpalam metodę z warstwy model np. uploadFile().

1. Czytałem, że należy wszystkie informacje pobierane z formularza ($_FILE, $_POST) przekazywać w parametrach metody (np. uploadFile(array $file)). Tutaj moje pierwsze pytanie, bardzo proste (IMG:style_emoticons/default/smile.gif) Dlaczego? Dlaczego nie można pobierać tych tablic w warstwie model? Ze względów bezpieczeństwa? Jeżeli tak to co w tym niebezpiecznego?

2. Gdzie należy walidować w takim razie $_FILE i $_POST? W kontrolerze czy modelu?


Go to the top of the page
+Quote Post
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Ad. 1. Bo wtedy wszystkie zalety płynące z rozdzielenia poszczególnych warstw aplikacji trafia szlag. Co z tego, że masz wgrywanie plików wydzielone do osobnego, niby niezależnego komponentu skoro możesz użyć go wyłącznie w jednej sytuacji (zależność na $_FILE['xxx'], której w żaden sposób nie można kontrolować).
Ad. 2. Kontroler nie powinien mieć żadnej wiedzy n/t formatu przetwarzanych danych, stąd nie ma możliwości sprawdzenia ich poprawności. Odpowiedź nasuwa się chyba sama...
Go to the top of the page
+Quote Post
Pjotrek80
post
Post #3





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 9.04.2013

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


Cytat(Crozin @ 16.07.2013, 23:22:04 ) *
Ad. 1. Bo wtedy wszystkie zalety płynące z rozdzielenia poszczególnych warstw aplikacji trafia szlag. Co z tego, że masz wgrywanie plików wydzielone do osobnego, niby niezależnego komponentu skoro możesz użyć go wyłącznie w jednej sytuacji (zależność na $_FILE['xxx'], której w żaden sposób nie można kontrolować).
Ad. 2. Kontroler nie powinien mieć żadnej wiedzy n/t formatu przetwarzanych danych, stąd nie ma możliwości sprawdzenia ich poprawności. Odpowiedź nasuwa się chyba sama...

No tak, brzmi to bardzo sensownie. Troszkę myślenia muszę włączyć (IMG:style_emoticons/default/smile.gif) Dzięki
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: 22.08.2025 - 15:55