Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zarządzanie dostępem w aplikacji (MVC)
Forum PHP.pl > Forum > PHP
zaajcu
Cześć.
Piszę aplikację opartą o własny MVC mam problem z zorganizowaniem dostępu do modułów. Mianowicie jest kilka akcji(modułów) do których nie jest wymagane logowanie następnie do całej reszty potrzebne jest zalogowanie. Nie wiem gdzie takie sprawdzenie ewentualne logowanie zrobić i jak zarządzać do czego ma być dostęp bez loogowania a do czego nie.

Zasada działania mojego MVC
  1.  
  2. Client -> fronController (tu parsuje żądanie usera i na jego poctawie ładuje odpowieniego pomocniczego kontrolera i przekazuje mu akcje która ma wykonać)
  3.  
  4. kontroler_pomocniczy -> model (ładowanie dancyh)
  5.  
  6. kontroler_pomocniczy -> view (pobranie widoku i załadowanie go danymi)
  7.  
  8. kontroler_pomocniczy -> frontController (przekazanie wyników do frontControllera, ładowanie templatki)
  9.  
  10. front_controller->client (wyświetlenie danych)


Katalogi :

  1. _aplication
  2. _config
  3. _controller (tu przechowuje wszystkiie kontrolery pomocnicze)
  4. system
  5. defaultController.php
  6. mojeKontoController.php
  7. strony
  8. defaultController.php
  9. kategorieController.php
  10. defaultController.php
  11. _model
  12. _view
  13. index.php
  14. .htaccess


Przykładowe linki:

  1. mojastrona.pl/ -> odwołuuje się do _controller/defaultController.php z akcja default
  2. mojastrona.pl/start -> odwołuuje się do _controller/defaultController.php z akcja start
  3. mojastrona.pl/system/test -> odwołuuje się do _controller/system/defaultController.php z akcja test
  4. mojastrona.pl/system/mojeKonto/ -> odwołuuje się do _controller/system/mojeKontoController.php z akcja default


Macie pomysł gdzie by można było dodać sprawdzanie dostępu i na jakiej zasadzie rozgraniczyć strony gdzie logowanie jest wymagane a gdzie nie?

jedyną koncepcje jaką ja mam to sprawdzanie w każdym kontrolerze lub akcji, która wymaga logowania czy user jest zalogowany, ale to jest powtarzanie jednego kawałka kodu w kilkudziesięciu miejscach :/
d3ut3r
Przed załadowaniem kontrolera czyli w twoim frontController po sparsowaniu żądania sprawdzasz czy do akcji x moduły y jest wymagane logowanie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.