ZeRKoX Skrevet 26. februar 2009 Del Skrevet 26. februar 2009 Jeg driver å skriver mitt eget CMS, for å lære litt php kombinert med MySQL. Tidligere gav jeg tilganger til funksjoner basert etter rang. dvs. at jeg hadde et felt i brukertabellen som het tilgang, og der var en verdi mellom 1-5 f.eks. Utifra dette gav jeg de med en høyere verdi enn tre tilgang til en funksjon... Jeg vil forbedre dette litt, og har derfor tre tabeller som skal ha noe å si i forhold til tilgangen. la oss kalle disse for brukere, funksjoner og tilgang. I brukere er brukerene lagret (logisk? ). De har et id-felt kallet U_ID. I funksjoner er alle mulighetene du har på siden lagret. Dette være f.eks å administrere brukerene. Her har vi en id som heter F_ID. I den tredje tabellen har jeg tre felt, T_ID, U_ID og F_ID. T_ID er auto increase, og bare en ID på den posten, og de to andre forteller f.eks at U_ID=1 skal ha tilgang til F_ID=10002. En post for hver tilgang. Forstår? Problemet mitt er å lage et brukervennlig grensesnitt i adminpanelet der vi kan endre på tilgangene, og jeg ser da for meg at jeg lager en "tabell" der brukerene er listet opp til venstre, og tilgangene ligger listet opp på toppen, og det er en avkryssningsboks for hver tilgang til hver bruker. Tanken er da at vi skl kunne krysse av hva en spesifikk bruker har tilgang til, og deretter trykke ja, så skal tilgang tabellen rette seg slik at den inneholder de rette relasjonene mellom brukere og funksjoner. Hvordan skal jeg best få til dette? Lenke til kommentar
OIS Skrevet 27. februar 2009 Del Skrevet 27. februar 2009 (endret) Det er bra du bruker beskrivende feltnavn så det hele er lett å skjønne. Synes ellers at du kan lære litt fra ACL. Liker Zend sin enkle implementasjon, kommer 2 bra utvidelser til den snart også. Poenget er at hvis du skal endre på selv et lite antall personer, som 10 stykk, så blir det fort kjedelig å måtte endre på hver enkelt. Du trenger et rolle (brukergruppe) objekt som kan inkludere roller/brukere. Hver bruker kan være med i flere roller, og du kan på brukerens side spesifisere rollene de er med i, og på rollens side brukerne som er med og tilgangene til rollen. Foreslår du ser på Zend sin implementasjon (linket over). Hvis du ikke vil bruke det, kan du i det minste bli inspirert. Endret 27. februar 2009 av OIS Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå