Toon posts:

[MySQL] Levellen zonder levels.

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi allemaal

Ben bezig met het maken van een rechtensysteem.
Dit rechtensystyeem heeft ook gebruikersgroepen.
Nu wil ik niet dat iemand van het 1e laagste gebruikersgroep, iemand aan de hoogste gebruikersgroep kan koppelen.

Ik heb daarom het idee om met een query de items en actions menu_id te nemen en als een gebruikersgroep andere waardes heeft niet weer te geven.
Een gebruikersgroep die minder waardes heeft mag wel worden gezien. Maar hij mag geen andere waardes hebben.
De tabel ziet er als volgd uit.
code:
1
2
3
4
5
6
7
id
type_id
type
item
action
menu_id
access


De afhankelijke velden zijn item, action en menu_id.

Het probleem is dat ik geen idee hoe ik het voor elkaar moet krijgen.
Ik heb al geprobeerd met joins alleen ik kreeg dan niks terug.
NON exists maar dat ging ook niet.
Het moet met een van die twee dacht ik. Maar mijn kennis van SQL is beperkt.

  • André
  • Registratie: Maart 2002
  • Laatst online: 06-05 11:13

André

Analytics dude

Ik snap geen hout van je hele verhaal :? Wat wil je nu precies, wat heb je geprobeerd en wat lukt niet?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 18:52

gorgi_19

Kruimeltjes zijn weer op :9

Waarom wil je met accesslevels werken en werk je niet met individuele permissies, welke je vervolgens in een groep kan onderbrengen?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
@gorgi_19 ik breng in die tabel indivudieel en groep rechten onder.
Het is de bedoeling dat je een gebruiker kan koppelen aan een gebruikersgroep.
Je wilt natuurlijk niet dat een gebruiker iemand meer rechten geeft dan dat ie zelf heeft.
Ik zoek daarom een manier om de gebruikersgroepen met dezelfde rechten of minder weer te geven.
Daarvoor moet ik wel een query hebben die de type_id's teruggeeft.

@andré
Ik heb van alles geprobeerd maar het komt niet in de buurt wat ik wil, vandaar.

[ Voor 12% gewijzigd door Verwijderd op 17-03-2005 15:39 ]


  • TheRookie
  • Registratie: December 2001
  • Niet online

TheRookie

Nu met R1200RT

bedoel je "Select type_id from tabel where access <= eigen niveau" of iets dergelijks ?

Verwijderd

Topicstarter
Edit:

Ik heb het al voor een groot gedeelte.
De database was met verkeerd data gevuld 8)7

code:
1
2
3
4
5
6
7
8
9
10
11
12
SELECT * FROM admin_right as andere
WHERE NOT exists
(SELECT id, item, action
FROM admin_right as eigen
WHERE
eigen.action = andere.action AND
eigen.item = andere.item AND
eigen.type_id = 5
AND eigen.type = 'usergroup'

)
GROUP By andere.type_id

De geeft de id's terug van de gebruikersgroepen die ik niet mag gebruiken.
Ik denk dat ik daar wel verder mee kom :)

[ Voor 85% gewijzigd door Verwijderd op 17-03-2005 16:20 ]

Pagina: 1