Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Przechowywanei informacji o prawach
Kamil Pietrzak
post
Post #1





Grupa: Zarejestrowani
Postów: 213
Pomógł: 10
Dołączył: 7.01.2010
Skąd: Lublin

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


Witam

W jaki sposob przechowujecie informacje o prawach uzytkownika?

Wymyslilem sobie taki sposob, ze w bazie bedzie pole tekstowe na prawa uzytkownika - np. takie cos "-v -comm-mkdir -comm-delfile -com-chname -pm-send -art-add -art-del -art-mod" etc.

potem na poczatku skryptu byloby to pobierane i zapisywane do stalej RIGHTS, a w trakcie dzialania rozne klasy sprawdzwalyby sobie czy RIGHTS zawiera np. -art-add(prawo do pisania artykulow)

co myslicie o tym sposobie?
Go to the top of the page
+Quote Post
Otto
post
Post #2





Grupa: Zarejestrowani
Postów: 144
Pomógł: 7
Dołączył: 22.03.2010

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


A nie prościej dać np samą kolumnę access i np 1 na ma prawa do pisania tego wszystkiego a 0 nie ma?
Go to the top of the page
+Quote Post
Kamil Pietrzak
post
Post #3





Grupa: Zarejestrowani
Postów: 213
Pomógł: 10
Dołączył: 7.01.2010
Skąd: Lublin

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


Wtedy uzytkownik albo by mial prawa, albo by ich nei mial, a nie np. tak, ze ma prawa do pisania artykulu, ale do kasowania nie ma, a edytowac moze tylko swoje

Oczywiscie nie nadalbym praw kazdemu userowi z osobna, tylko poprzez grupy

Teraz pozostaje pytanie - zrobic to tak, czy oddzielna kolumne dla kazdego prawa w bazie?
a moze bylby jakis inny sposob?
Go to the top of the page
+Quote Post
Ulysess
post
Post #4





Grupa: Zarejestrowani
Postów: 695
Pomógł: 65
Dołączył: 27.07.2009
Skąd: Y

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


a nie możesz zrobic 1 pola w bazie i dać np
1 - admin
2 - moderator
3 - mozliwosc edytowania postow
4 - kasowania
- itd
(IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
flashdev
post
Post #5





Grupa: Zarejestrowani
Postów: 812
Pomógł: 117
Dołączył: 2.12.2008

Ostrzeżenie: (10%)
X----


Robisz pole 8 bitowe w bazie (TINYINT) i w nim możesz zapisać 8 dwuwartościowych niezależnych zmiennych. Każdą ze zmiennych sumujesz bitowo z odpowiednią wagą.
zm0 | zm1<<1 | zm2<<2 ...

wyciągnięcie zmiennej analogicznie:
if( pole & (1<<numer_ziennej) ) ...
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 25.08.2025 - 06:25