Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] ilosc zmiennych sesyjnych..., przy ustalkaniu praw dostepu
-Gość_żaba_*-
post
Post #1





Goście







witam

nurtuje mnie jeden problem, a mianowicie

mam zrobione w bazie danych rozne pola mowiace o prawach dostepu. I teraz mam takie pytanko czy lepiej podczas samego procesu logowania pobrac wszystkie dane i zapisac je do sesji jakie kto ma przywileje (tylko mowie ze moze to byc nawet 20 zmiennych dla kazdego usera) czy przy kazdej probie wejscia danego usera pod dany adres sprawdzac zapytaniem do bazy czy ma takie prawo ?

jak troche nie zrozumiale to przepraszam - ale tak najprosciej mowiac to czy zapisywanie kolo 20 zmiennych sesyjnych dla kazdego usera nie spowoduje jakichs komplikacji (np. bardzo duzego obciazenia serwera lub innych rzeczy)

pozdrawiam
Go to the top of the page
+Quote Post
nasty
post
Post #2





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


nie powinno, moim skromnym zdaniem lepjej jest jednorazowo pobierac wszystko, odciazajac traffic
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #3





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Ja z kolei przychyle się do zdania, że lepiej sprawdzać, czy użytkownik ma prawa do wykonania żądania za każdym razem. Przechowywanie wszystkich uprawnień w sesji jest mało sensowne np. z takiego powodu, że jeśli administrator zmieni te prawa, to uzytkownik odczuje to dopiero przy ponownym ich wczytaniu z bazy. Można to oczywiści rozwiązać, ale po co? Wszystkozależy od projektu - jego wielkości, częstotliwości zmian w uprawnieniach, ilości użytkowników.

Pozdrawiam.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
Ludvik
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

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


Cysiaczek: Porównaj sobie jak często będą dokonywane zmiany w uprawnieniach, a jak często będziesz pobeirał te uprawnienia. Jedno zapytanie kasujące sesję kontra xxx zapytań pobierających dane, każde przy odświeżeniu strony. Już lepiej dopisać coś, co oczyści przedawnione sesje, czy nada nowe uprawnienia. Strata czasu będzie minimalna przy kosztach wykonania każdego dodatkowego zapytania.


--------------------
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #5





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




@Ludvik - czas potrzebny na zapytanie do bazy w tym wypadku nie jest tu aż tak duży, jeśłi odpowiednio utworzysz tabele uprawnien smile.gif ~0.00005 sekundy. Czy to wiele?


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post
Ludvik
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

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


Ale nie rozumiem, jaki jest sens tak nadmiernie obciążać serwer, skoro można prosto to ominąć. Te mikrosekundy staną się ważne przy większych projektach, gdzie natężenie ruchu będzie znaczne. Poza tym po co wykonywać 100000 zapytań, jak można wykonać jedno? Zawsze powinno się dążyć do zmniejszenia obciążenia bazy. Poza tym takie sytuacje są niezwykle rzadkie w dobrze zaprojektowanym systemie.


--------------------
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #7





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




@Ludvik - jesli bardzo zależy Ci na wydajności sererwa baz danych, to tak - warto takie rzeczy cashować, choć umieszczanie w zmiennych sesyjnych też ma swoje złe strony.


--------------------
To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness;
chaotic, confused, vulnerability, to inform yourself.
Think for yourself. Question authority.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 03:58