![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 426 Pomógł: 1 Dołączył: 2.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Natrafiłem na następujący problem podczas pisania frameworka: Na podastawie adresu http://strona.pl/controller/action wywołuje odpowiedni obiekt controllera a potem metode na podstawie nazwy akcji. No i powiedzmy ze kontroler nazywa sie 'newsy' czyli mam folder newsy a w nim główny plik kontrolera news.php i w nim wszystkie metody np: 'wyswietlNews', 'archiwum' oraz te co powinny być dostępne z panelu administrcyjnego: 'edytuj', 'akceptuj', 'dodaj', ale nie wiem jak skutecznie rozwiązać prolem z logowaniem aby np po przejsciu do innego kontrolera ('forum') nie trzeba było sie pomownie logować. Chodzi mi o przykładowe API z waszych frameworków (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Pozdrawiam Apo |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Moje rozwiazanie jest nastepujace:
1. Kazda akcja to osobna klasa. Czyli mam np. klasy DodajNowosc, EdytujNowosc, PokazZdjecie. W klasach tych wymagana jest metoda execute(), ktora zawiera cialo akcji. Ponad to Akcja musi miec zdefiniowana metode isSecure zwracajaca wartosc logiczna, ktora informuje framework, czy nalezy sprawdzac bezpieczenstwo. Jezeli isSecure zwraca true, pobierany jest konfig akcji i sprawdzany jakie grupy sa wymagane. Framework sprawdza, czy uzytkownik je ma i odpowienio - olbo odrzuca akcje, albo ja wykonuje. Jak wykorzystac to w panelu? Akcje typu PokazNewsa, DodajKomentarz nie musza korzystac z bezpieczenstwa. Ale UsunNewsa, EdytujNewsa sa bezpieczne i wymagaja grypy np. admin albo moderator. Ponad to, zwracajac uwage na fakt, ze panel moze wygladac zupelni inaczej (wizualnie) od strony, to mozemy uzyc w tych akcjach innego szablonu dla widoku glownego (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Pozdrawiam, Adrian. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 22:37 |