kostenloser Webspace werbefrei: lima-city


Berechtigungskonzept

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    lw-b

    lw-b hat kostenlosen Webspace.

    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?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. 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
  4. Autor dieses Themas

    lw-b

    lw-b hat kostenlosen Webspace.

    alles klar! werde ich mir mal anschauen!
    Danke
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!