![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 24.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam dwa pytania natury projektowej. Zrobiłem sobie prostą klasę do obsługi logowania. Po zalogowaniu w sesji trzymam tylko id usera natomiast przy każdym odświeżeniu strony pobieram z bazy nazwę użytkownika (jedna sqlka) i uprawnienia do modułów (druga sqlka). I tu pytanie czy takie podejście jest dobre czy może lepiej po zalogowaniu wczytać do sesji przynajmniej nazwę użytkownika co wyeliminowało by jedno zapytanie? Jak u was w aplikacjach jest to rozwiązane ile rzeczy trzymacie w sesji czy tylko te najważniejsze czy używacie ją dość mocno jako "magazynek" ? Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Developer Grupa: Moderatorzy Postów: 3 045 Pomógł: 290 Dołączył: 20.01.2007 ![]() |
Elegancko było by trzymać tylko ID użytkownika, a inne dane wyciągać z bazy w tych miejscach które są potrzebne, ale jak wiadomo programowanie to sztuka kompromisów i na poczet wydajności lepiej trzymać wszystko w sesji.
(...) Natomiast uprawnienia odczytuj z bazy. Dlaczego? A np. dlatego, że jeśli ktos się zaloguje, a w międzyczasie admin zmieni mu uprawnienia dostępu do któregoś z modułów, on nadal będzie miał do niego dostęp, bo uprawnienia sprzed zmiany będą zapisane w sesji. To się wyloguje i zaloguje jeszcze raz, wyobraź sobie że przykładowo na naszej klasie za każdym razem jest odpytywana baza o to czy użytkownik ma dostęp do danej podstrony. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 12:50 |