Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MVC] Warunkowe wyświetlanie danych
Vasquez21
post
Post #1





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 2.11.2004
Skąd: Jaworzno

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


Witam wszystkich,

Na początek tylko informuję, że przejrzałem sporo wątków na forum, ale nadal nie znam odpowiedzi, a chciałbym od początku zabawy z MVC podążać w dobrym kierunku.

Struktura u mnie wygląda mniej więcej tak:
MODEL:
  1. class Table_Model
  2. {
  3. private $db;
  4.  
  5. public function __construct()
  6. {
  7. $this->db = new MysqlImproved_Driver;
  8. }
  9.  
  10. public function get_table_status($idTable)
  11. {
  12. //jakiś kod
  13. }
  14.  
  15. }


KONTROLER:
  1. class Table_Controller
  2. {
  3. public function main(array $getVars)
  4. {
  5. $table_Model = new Table_Model();
  6.  
  7. $status = $table_Model->get_table_status($_GET['id']);
  8. $master = new View_Model('table');
  9. $master->assign('status' , $status);
  10.  
  11. $master->render();
  12. }
  13. }


WIDOK:
  1. kod html :)


I teraz pojawiło mi się bardzo proste pytanko. Mianowicie jak prawidłowo powinienem obsłużyć taką sytuację, że zależnie np. od tego co zwróci status chciałbym pewną część strony załadować z inną wartością.
Dla przykładu powiedzmy, że jeżeli status = 1 to oznacza to, że user jest zalogowany i chcemy wyświetlić jakieś powitanie, jeżeli status != 1 to wyświetlamy okienko logowania. 95% strony pozostaje bez zmian.
Ale teraz czy powinienem stworzyć osobny plik z widokiem dla opcji pierwszej i opcji drugiej i zależnie od tego jaki był wynik wywoływać albo jedną albo drugą? Czy może powinienem to jakoś inaczej rozwiązać?
Rozumiem, że wszystko sobie sprawdzam w kontrolerze, ale zakładając że 90% kodu html będzie bez zmian, a tylko ten mały fragment może się zmienić to
Go to the top of the page
+Quote Post

Posty w temacie


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: 17.10.2025 - 22:07