Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Prosty Router czy coś w tym stylu
ghastblood
post
Post #1





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


Witam,

chciałem dowiedzieć się o rozwiązanie mojego problemu

na chwile obecną tworze np plik do obsługi wyników

  1. if(!isset($_GET["mode"]))
  2. {
  3. //ZMIENNE
  4. $_GET['mode'] = 'undefined';
  5. //ZAPYTANIA
  6.  
  7. //LOGIKA
  8. include_once "view/wyniki/index.tmp.php";
  9. }
  10.  
  11. if($_GET['mode'] == 'add')
  12. {
  13. //ZMIENNE
  14.  
  15. //ZAPYTANIA
  16.  
  17. //LOGIKA
  18. include_once "view/wyniki/add.tmp.php";
  19. }
  20.  
  21. if($_GET['mode'] == 'results' && isset($_GET['id']))
  22. {
  23. //ZMIENNE
  24.  
  25. //ZAPYTANIA
  26.  
  27. //LOGIKA
  28.  
  29. include_once "view/wyniki/results.tmp.php";
  30. }


czy jest możlowość jakoś zastąpienia tego żeby nie wymagało to pisania tylu warunków np jedenk plik obsługuje pare zdarzeń np dodawanie zawodnika edycja zawodnika wyświetlanie listy zawodników kasowanie zawodnika

prosze o pomoc jak mogę zarządać wybranymi akcjami

Ten post edytował ghastblood 4.06.2015, 10:52:37
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
ghastblood
post
Post #2





Grupa: Zarejestrowani
Postów: 360
Pomógł: 12
Dołączył: 17.09.2009
Skąd: Warszawa

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


dzięki faktycznie jest to fajnie rozpisane i pokazane jak to działa mniej więcej. Teraz tylko pozostaje albo napisać coś co jest zrobione żeby zrozumieć jak to działa albo próbować przerobić sample bo np chciał bym pozostać czy smarty zeby nie przerabiać plików widoku

Mam pytanie odnośnie MVC korzystam z mini_master z github gdzie mogę zadeklarować klasę tak aby mieć dostęp do deklaracji z poziomu kontrolera modelu i widoku

jak przekazać zmienne z klasy do widoku
np w HomeController mam $test = '1';

i chciał bym ja przekazać do HomeView aby wyświetlić przypisać ją do smarty i wyświetlić

  1. class HomeView extends View
  2. {
  3. public function index()
  4. {
  5. echo $home->test;
  6. $this->render('home', 'index');
  7. }
  8. }


raczej odpada

Z tego co wiem to Model obsługuje całą logike połaczenia z bazą danych Widok odpowiada za warstwe końcową to co użytkownik widzi a kontroler przyjmuje dane wejściowe od użytkowników oraz reaguje na jego poczynania.

teraz robie wyświetlanie listy plików w katalogu z bazami danych sqlite czyli w modelu wykonuje stworzenie listy plików $files = glob(APP.'data/*.s3db'); i tą zmienna powinienem przekazać do widoku gdzie przypisze ją do smarty $tpl->assign('file', $files); a kontroler wyświetli mi widok $view = $this->LoadView('home'); $view->index();

chyba wpadłem jak to zrobić tylko nie jestem w 100% przekonany proszę o potwierdzenie


  1. class Player extends Controller
  2. {
  3. public function index()
  4. {
  5. //Pobiera wszystkich zawodników z MySql do tablicy
  6. $data['players'] = $this->model->getAllPlayers();
  7. //Wczytuje Widok
  8. $view = $this->LoadView('player');
  9. //Wczytuje Metode index z Widoku w której $data jest przydzielana do zmiennej Smarty
  10. $view->index($data);
  11. }
  12. }


pytanie czy to jest dobre rozwiązanie czy może jest jakieś prostrze

Ten post edytował ghastblood 4.06.2015, 16:29:26
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: 15.10.2025 - 06:57