Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Przechowywanei informacji o prawach
Kamil Pietrzak
post 20.10.2010, 20:41:40
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 20.10.2010, 20:45:30
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 20.10.2010, 20:51:17
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 20.10.2010, 21:14:02
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
questionmark.gif
Go to the top of the page
+Quote Post
flashdev
post 20.10.2010, 21:25:55
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
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 18:44