![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 0 Dołączył: 10.05.2011 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich forumowiczów!
Od paru dni mnie zastanawia kwestia tego jak można w MVC w najlepszy sposób przekazywać komunikaty. Mianowicie mamy np. taką sytuację: Osoba która NIE jest użytkownikiem naszej strony wpisuje adres URL do strony na którą nie ma dostępu i w odpowiedzi zostaje przekierowana na stronę główną na której jest panel logowania, ale również u góry tej strony głównej pojawia się komunikat na czerwono z informacją żeby móc zobaczyć tę podstronę musi się zalogować. Wiele osób piszę że można wykorzystać np. metodę $_GET lub sesje -ale czy to jest najlepszy sposób? -w jaki sposób ma to rozwiązana np. taka joomla? ma specjalne klasy od wyjątków które przekazuje z controllera i wywołuje w odpowiednim miejscu w widoku? Interesuje mnie tylko po prostu jak przekazać komunikat po przekierowaniu na inną stronę. Mam nadzieję, że udało mi się to w miarę "łopatologicznie" napisać o co mi chodzi i jeśli mogę prosić to w taki sam sposób chciałbym mieć to wyjaśnione (IMG:style_emoticons/default/tongue.gif) Z góry dziękuję za pomoc. POZDRAWIAM! i przepraszam że zmarnowałem parę minut na lekturę (IMG:style_emoticons/default/tongue.gif) (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
To się nazywa Flash Messages. Działa w oparciu na sesji.
Jeżeli user nie ma dostępu -> zapisujesz w sesji url jakiś komunikat. Przekierowujesz na daną stronę czyli np. do formularza logowania. Twój layout sprawdza czy istnieje jakaś wiadomość Flash Message i ją wyświetla Ten post edytował Turson 13.12.2014, 15:12:41 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 0 Dołączył: 10.05.2011 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
Czyli rozumiem że z tym flash message mogę użyć np. header('Location: index.php') i wyświetlić komunikat, tak?
Czy raczej masz inne rozwiązanie niż header('Location: index.php')? Ten post edytował plastus321 13.12.2014, 15:39:51 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Dokładnie tak. Tyle że żeby to było bardziej eleganckie stwórz klasę z metodami do stworzenia przekierowania i sprawdzenia czy obecnie jest przekierowanie.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 0 Dołączył: 10.05.2011 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
Dzięki, zrobiłem tak jak powiedziałeś (IMG:style_emoticons/default/wink.gif) poczytałem jeszcze trochę o tym i zrobiłem własną klasę obsługującą komunikaty (IMG:style_emoticons/default/smile.gif)
Jeśli ktoś by szukał przykładowego rozwiązania tego to podaje tu jeden z nich (źródło: http://stackoverflow.com/questions/1198806...ge-with-message)
Pozdrawiam i jeszcze raz dzięki za pomoc! (IMG:style_emoticons/default/smile.gif) Ten post edytował plastus321 15.12.2014, 18:33:45 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 18:58 |