Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> MVC i problem z formularzem
Elbacer
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 25.12.2008

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


Witam

Mam pytanie gdzie umieścić kod tworzący formularz, aby trzymać się struktury MVC?
Mój przykładowy kod:

$GG = new Inputs();
$GG->name = "gg";
$GG->text_right = "Numer Gadu-Gadu";
$GG->width = 100;
Veryfication::SetIsError($GG->CheckLenght( 1, 10, "Maksymalna ilosc cyfr to 10 exclamation.gif!" ));
Veryfication::SetIsError($GG->CheckIsNumber( "Numer Gadu-Gadu, moze zawierac tylko cyfry exclamation.gif!" ));

Czy ten kod wrzucić do modelu czy kontrolera?
Proszę o wskazówkę.
Go to the top of the page
+Quote Post
blooregard
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




  1. <?php
  2. $GG = new Inputs();
  3. $GG->name = "gg";
  4. $GG->text_right = "Numer Gadu-Gadu";
  5. $GG->width = 100;
  6. ?>

Do kontrolera.

  1. <?php
  2. Veryfication::SetIsError($GG->CheckLenght( 1, 10, "Maksymalna ilosc cyfr to 10 !" ));
  3. Veryfication::SetIsError($GG->CheckIsNumber( "Numer Gadu-Gadu, moze zawierac tylko cyfry !" ));
  4. ?>

Do modelu.

Kontroler "buduje" fomularz.
Model powinien obsłużyć formularz (walidacja i dalsza obróbka danych), a widok - wyświetlić forma na stronie.

Ten post edytował blooregard 6.07.2009, 18:48:48


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
Elbacer
post
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 25.12.2008

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


Thx
Go to the top of the page
+Quote Post
R4D3K
post
Post #4





Grupa: Zarejestrowani
Postów: 144
Pomógł: 12
Dołączył: 16.03.2007

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


Cytat
Model powinien obsłużyć formularz (walidacja i dalsza obróbka danych), a widok - wyświetlić forma na stronie.


Ja zawsze robię w taki sposób, że kontroler zarządza modelem i widokiem i według mnie (ale to oczywiście mój punkt widzenia MVC) kontroler powinien sprawdzić dane. W praktyce tworzy się klasę np validate, która sprawdza czy dane są poprawne czy nie. Wynik zostanie zwrócony dla kontrolera a ten podejmuje decyzje czy przekazać je modelowi, aby zapisał dane do bazy danych, czy powołać widok który wyświetli informacje o błędnie wypełnionych polach.
Go to the top of the page
+Quote Post
blooregard
post
Post #5


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
Ja zawsze robię w taki sposób, że kontroler zarządza modelem i widokiem i według mnie (ale to oczywiście mój punkt widzenia MVC) kontroler powinien sprawdzić dane.

No, w sumie to u mnie jest podobnie, tylko że walidacja danych z formularza nie odbywa się bezpośrednio w samym kontrolerze, jedynie kontroler wywołuje odpowiednią metodę modelu, jako argument przesyłając jej tablicę danych z POST odebranych z formularza.
Potem model zwraca albo true i zwalidowane dane, albo false i tablicę z błedami, a kontroler w zależności od tego albo wywołuje metodę modelu zapisującą dane do bazy, albo ponownie buduje formularz uzupełniając go komunikatami błędów otrzymanymi z metody walidującej z modelu i zabawa zaczyna się od nowa smile.gif
Oczywiście samo wyświetlanie formularza bądź komunikatu o pomyślnym zapisaniu danych odbywa się w widoku - tu też odpowiednie metody wywołuje kontroler w oparciu o rezultaty walidacji formularza.


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 23:35