Rangen

Gestart doorFreestyle11 reacties37 weergaven

12 berichten · pagina 1 van 1

Freestyle

Lid · Topicstarter

Berichten
7.681
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Hoe kan ik het beste maken dat ik elk lid speciale toegang geeft.

Bv: Pietje: Alles
Fret: Alleen registreren en nieuwskijken
Niesje: Nieuwskijken en mooi wezen
etc,

Kan ik dit het beste doen door een array in de db te zetten bv:

Rangen:
pietje: nieuws, leden, mooi
fret: nieuws, leden
Niesje: nieuws, mooi

En dan met explode ofzo controleren?
Of is er een makkelijkere/snellere/betere manier???

Alvast bedankt!
0
Berichten
10.409
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Maak gewoon in de database:

Nieuws:
Leden:
Mooi:

Zet het op 1 als ze toegang maken mogen en 0 als ze dat niet mogen. Maak dan een if statement; if rang == 1.
0
Freestyle

Lid · Topicstarter

Berichten
7.681
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Kingunit schreef:
Maak gewoon in de database:

Nieuws:
Leden:
Mooi:

Zet het op 1 als ze toegang maken mogen en 0 als ze dat niet mogen. Maak dan een if statement; if rang == 1.
Aah slim idee wink
Dan krijg je:
Rangen - > Nieuws, leden, mooi, lid_id
0 1 0, 45

Thnks!
0
Berichten
3.788
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Let dan wel op dat als je meerdere rangen krijgt je database wel een puinhoop word!
Ik gebruik zelf liever gewoon de eerste manier, allemaal achter elkaar zetten en dan exploden.
Dan schrijf je er een functie bij die controleert of een lid een bepaalde rang heeft en je bent klaar
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Of verdiep je eens in ACL / RBAC, waarbij je met usergroups werkt, en de rights in de source verwerkt. pompom
0
Fass

Lid

Berichten
3.771
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Freestyle schreef:
Eerdere citaten tonen
Kingunit schreef:
Maak gewoon in de database:
Nieuws:
Leden:
Mooi:

Zet het op 1 als ze toegang maken mogen en 0 als ze dat niet mogen. Maak dan een if statement; if rang == 1.

Aah slim idee wink
Dan krijg je:
Rangen - > Nieuws, leden, mooi, lid_id
0 1 0, 45

Thnks!
Als ik jou was zou ik het permissions noemen, geen rangen.
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
Of nog beter rights en roles....
permissions is de dekkende lading.
0
Berichten
907
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
In je database een kolom maken met de naam "rank" (of whatever) en bijvoorbeeld:

Rank:
0 = normaal gebruiker
1 = hoog gebruiker
2 = mod
3 = admin

[COLOR= #0000BB]<?php
$gebruikersnaam[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$_SESSION[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]gebruikersnaam[/COLOR][COLOR= #007700]];[/COLOR]
[COLOR= #0000BB]$rank[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/mysql_query"]mysql_query[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"SELECT `rank` FROM `database` WHERE `gebruikersnaam` = $gebruikersnaam"[/COLOR][COLOR= #007700]);[/COLOR]

[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$rank[/COLOR] [COLOR= #007700]>[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700]){[/COLOR]
[COLOR= #FF8000]// al je code[/COLOR]

[COLOR= #007700]}[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$rank[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #0000BB]3[/COLOR][COLOR= #007700]){[/COLOR]
[COLOR= #FF8000]// al je admin code[/COLOR]
[COLOR= #007700]}[/COLOR]

?>
0
Freestyle

Lid · Topicstarter

Berichten
7.681
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
@calvin: Heb je mijn bericht wel gelezen? Volgens mij niet...
0
Berichten
10.421
Reputatie
4
Punten
0,00
Lid sinds
Laatst gezien
leuk systeem, maar als je een nieuwe rank hebt, moet je de code aanpassen. Daarom loont het meer om met rights te werken. Waarmee je vervolgens bepaald of iemand dat ene mag bekijken.
0
Berichten
6.485
Reputatie
0
Punten
0,00
Lid sinds
Laatst gezien
Daarbij kan je dan ook een bepaald lid bijvoorbeeld alleen ticketbeheer laten doen.
0
Rik

Lid

Berichten
18.393
Reputatie
0
Punten
0,04
Lid sinds
Laatst gezien
Ik heb dit (versimpeld) in gebruik voor een van mijn projecten:

Users
- Id
- UserName
- Group

Groups
- Id

GroupedPerms
- GroupId
- PermId

UserPerms
- UserId
- PermId

Perms (Permissions)
- PermId
- ShortName

De user kan dan:
In een groep zitten. Die groep heeft verschillende GroupedPerms die verwijzen naar Perms.
Individuele perms hebben. Die verschillende UserPerms verwijzen naar Perms.

Je hebt dan bijvoorbeeld:

1
Rik
1

GroupedPerms
1, 3
1, 6

Userperms
1, 2

Perms
3 - forummod
6 - admin
2 - rikonly


Rik zit dan in Groep 1. Groep 1 heeft GroupedPermission>Perms 3 en Perms 6 (forummod, admin). Rik heeft echter ook nog UserPermission>Perms 2 (rikonly).

Je haalt deze rechten dan op en stopt ze voor CurrentUser in een array. Vervolgens ga je met een ( checkPerms(admin) === true ) na of iemand een bepaalde Perms heeft. Die functie checkt uiteraard met in_array() o.i.d. of de bepaalde perm in de CurrentUser array staat.
0

Jouw reactie

Deel je idee, stel een vraag of help een ander verder.

Editor laden…

Praat mee met de One2xs-community.

Inloggen om te reageren