2010-08-05 70 views
0


我們擁有供內部團隊訪問的軟件存儲庫網站。
目前有很多用戶,並分成不同的組。
爲了管理它們,我們使用類似二進制的字符串,如'000101',並檢查1和它的位置,基於此,我們確定用戶屬於哪個組。

例如,
'01111'=>組 'TEST1'
'10111'=>組 'TEST2'
'11011'=>組 'exa1'
'11101'=>組 'exa2'
'11110' =>組'admin'
我們在用戶訪問時使用'AND'操作...
user ='someone',acces s ='01001'...表示用戶(某人)屬於組=> test2和admin。

我們存儲這個二進制數。字符串到數據庫。
現在情況就好像沒有。的組增加(60 +),我正在尋找一些新的邏輯,而不是二進制字符串來識別用戶和相應的組。

因此,如果任何人執行或知道不同的邏輯,而不是上述之一,那麼請分享它,這將是很大的幫助。

在此先感謝。
如何使用數據庫和PHP管理用戶和組?

回答

2
CREATE TABLE groups_members (
    group_id INTEGER NOT NULL, 
    member_id INTEGER NOT NULL, 
    PRIMARY KEY(member_id, group_id) 
); 

基本SQL。有一個members表,一個groups表和一個表映射成員到組。這被稱爲多對多關係。順便提一句,你顯示的數字沒有意義......如果你想要60個組,你需要60位長的數字,除非有些組是其他一些組的超集。要確定組成員資格,這將是一個或運算,而不是一個與。

相關問題