Avatar billede Slettet bruger
22. februar 2006 - 18:49 Der er 4 kommentarer og
1 løsning

Adgangsniveauer ud fra tal.

Hej!

Jeg har for et stykke tid siden lavet et simpelt system til kontrol af adgangsniveauer.

Hvis vi forestiller vi har følgende sider:
A: 1
B: 2
C: 4
D: 8
E: 16

Alle sider er altså tildelt en værdi. Hvis jeg så ville give en bruger adgang til side A,B og D ville jeg give brugeren adgangsniveau 1+2+8 = 11.
Hvis jeg derimod ville give brugeren adgang til C,D og E ville brugeren få adgangsniveau 4+8+16 = 28.

Jeg har imidlertid glemt hvordan man laver tilbageregningen, altså beregningen af om en bruger har rettighed til en given side eller ej.

Hvordan gøres dette?
Avatar billede fixxxer Nybegynder
22. februar 2006 - 18:54 #1
if ($niveau & 1) //giv adgang til side A
if ($niveau & 2) //giv adgang til side B

osv.
Avatar billede rynke10 Novice
23. februar 2006 - 10:38 #2
Starter med det største tal, i dit tilfælde 16. så kan du regne baglæns, er tallet større end 16, så har han adgang til niveau 16. træk 16 fra og lav samme beregning. Er tallet større end 8, så har han også adgang til niveau 8 o.s.v.
Avatar billede fixxxer Nybegynder
23. februar 2006 - 13:33 #3
Jeg tror det er bitwise beregningen der er den nemmeste :)
Avatar billede Slettet bruger
27. marts 2006 - 13:34 #4
Enig... :)
Fixxxer smider du et svar?
Avatar billede fixxxer Nybegynder
27. marts 2006 - 13:39 #5
Svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester