Berechtigungskonzept
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
aktuelle bilder
anschauen
auslese
berechtigung
bereich
beschrieben http
bild
code
dank
datum
gemacht code
gruppe
jemand
methode
nehmen
ordner
spalte
tabelle
umsetzen
-
Gibt es eine kürzere Methode die Berechtigung eines User auszulesen, als ich es gemacht habe?
Folgendes vorweg:
ich habe Ordner mit Bildern. DIese Ordner werden per PHP ausgelesen. Die links zu den Ordner mit den Bildern sollen dann entsprechend angezeigt werden.
Nehmen wir an:
"User1" ist in Gruppe "Gruppe1"
"User2" ist in Gruppe "Gruppe2"
"Ordner1" darf nur die Gruppe "Gruppe1" lesen
"Ordner2" darf nur die Gruppe "Gruppe2" lesen
Daten entsprechend in zwei DBs. Wenn lesen / zur Gruppe gehört, dann 1 sonst 0!
was habe ich nun gemacht:
<?php echo " Aktuelle Bilder: <br>"; // Auslesen der Userdaten $user=$_SESSION["user_username"]; // Auslesen der Ordner mit Berechtigungen $sql_ordner=mysql_query("SELECT * FROM bild_berechtigung"); while ($ordner=mysql_fetch_array($sql_ordner)) { $control_ordner=$ordner['Ordner']; // Auslesen der Gruppen aus Tabelle gruppen $sql_gruppen=mysql_query("SELECT * FROM gruppen"); while ($gruppen=mysql_fetch_array($sql_gruppen)) { $control_gruppe=$gruppen['Gruppe']; //Auslesen des Wertes der in der Spalte der Gruppe in der Tabelle bild_berechtigung steht $check_gruppe=mysql_query("SELECT $control_gruppe FROM bild_berechtigung WHERE Ordner = '$control_ordner'"); $result=mysql_fetch_array($check_gruppe); echo mysql_error(); //Checken ob aktueller User in der Gruppe ist if($result[$control_gruppe]==1) { $check_user=mysql_query("SELECT $user FROM gruppen WHERE Gruppe = '$control_gruppe'"); $erg=mysql_fetch_array($check_user); echo mysql_error(); if($erg[$user]==1) { $lesen =1; if($link_ordner!=$control_ordner) { echo "<ul><a href=\"i_index.php?section=bilder&cat=$control_ordner\">".$control_ordner."</ul></a>"; $link_ordner=$control_ordner; } } } } } ?>
gibt es da eine bessere Alternative? Wie kann man so etwas auch einfach auf andere Bereich umsetzen?!
Weiß da jemand was?
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
edit:
Unter folgendem Link ist alles sehr ausführlich beschrieben:
http://www.tutorials.de/php/319409-binaeres-rechtesystem.html
Beitrag zuletzt geändert: 27.1.2011 19:21:38 von lucas9991 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage