php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 12.03.2009, 17:23  
Neuer Benutzer
 
Registriert seit: 04.03.2009
Beiträge: 27
timmeyy befindet sich auf einem aufstrebenden Ast
Standard Eine Nutzerverwaltung mit Rechten erstellen

Hallo Leute!

Wie im Titel erwähnt möchte ich eine Eine Nutzerverwaltung mit Rechtvergabe erstellen.
Ich weiß leider nicht wie ich genau vorgehen soll, das Hauptproblem ist, das ich gerne mehrer Gruppen möchte mit verschiedenen Rechten, die Verwaltung soll für ein Bilderupload - Tool entwickelt werden.
Das heißt ich habe eine Gruppe Admin, Redakteuer der auf alle Bereich zu greifen darf, Redakteuer der nur auf seinen eigenen Bereich zu greifen darf(von diesen gibts 3 Gruppen).
Ich habe bereits ein Script damit ich User anlegen kann diese werden mit passwort in einer Datenbank Tabelle gespeichert.
Ein USER darf sich in allen Gruppen anmelden außer Admin (logisch).
Wie lege ich die jeweiligen Rechte für die Gruppen an?
ICh habe mir überlegt, eine Datenbank mit 3 Tabellen zu erstellen(Gruppe,Rechte,User) diese dann zu joinen, soweit so gut ,aber wie habe ich Zugriff mit php auf diese Tabellen?
Ein Problem von mir ist das ich nicht weiß wie ich die Rechte definieren soll in php und diese dann an die datenbank tabelle rechte übergebe?!
Hoffe ihr versteht was ich meine!
danke schonmal

mfg
timmeyy ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 12.03.2009, 18:17  
PTC
Erfahrener Benutzer
 
Benutzerbild von PTC
 
Registriert seit: 27.10.2007
Beiträge: 1.708
PHP-Kenntnisse:
Anfänger
PTC ist einfach richtig nettPTC ist einfach richtig nettPTC ist einfach richtig nettPTC ist einfach richtig nett
Standard

Bitte versuche es mit der Forensuche, das Thema findest du dort sicher.
PTC ist offline  
Alt 13.03.2009, 09:06  
Neuer Benutzer
 
Registriert seit: 04.03.2009
Beiträge: 27
timmeyy befindet sich auf einem aufstrebenden Ast
Standard

Ich habe natürlich bevor ich diesen Beitrag geschrieben habe einiges durchforstet aber keine guten ergebnisse gefunden die mich zufrieden stellen..
Habe sehr viel gegoogelt und gelesen.
Hat keiner ein Tipp wie ich Rechte in php definieren kann?

mfg
timmeyy ist offline  
Alt 13.03.2009, 09:22  
Erfahrener Benutzer
 
Benutzerbild von Felix
 
Registriert seit: 17.06.2008
Beiträge: 184
Felix befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von timmeyy Beitrag anzeigen
ICh habe mir überlegt, eine Datenbank mit 3 Tabellen zu erstellen(Gruppe,Rechte,User) diese dann zu joinen, soweit so gut ,aber wie habe ich Zugriff mit php auf diese Tabellen?
PHP: MySQL Funktionen - Manual

und schau dir SQL an.
__________________
Wer Rechtschreibefehler in meinen Beiträgen findet,
der darf sie gerne behalten/tauschen/bei ebay versteigern...
Felix ist offline  
Alt 13.03.2009, 09:39  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

@Felix: Es geht hier wohl eher um designspezifische Dinge als um die Umsetzung.
Der Hinweis auf die Forensuche ist ein guter.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 13.03.2009, 12:44  
Neuer Benutzer
 
Registriert seit: 04.03.2009
Beiträge: 27
timmeyy befindet sich auf einem aufstrebenden Ast
Standard

ich danke euch mal ich suche weiter...
timmeyy ist offline  
Alt 13.03.2009, 13:26  
Neuer Benutzer
 
Registriert seit: 13.03.2009
Beiträge: 6
TerraX befindet sich auf einem aufstrebenden Ast
Standard

Ich mach dir mal ein Beispiel:

Die Basis für ein Rechtesystem sollte immer eine vernünftige SQL-Tabelle sein.
Code:
User_Rechte
+-----------+--------------+------+---------+---------+----------------+
| NAME      | TYP          | NULL | KEY     | DEFAULT | Extras         |
+-----------+--------------+------+---------+---------+----------------+
| ID        | INT          |      | PRIMARY |         | AUTO_INCREMENT |
| UserID    | INT          |      |         |         |                |
| Recht     | VARCHAR(100) |      |         |         |                |
+-----------+--------------+------+---------+---------+----------------+
Das Prinzip ist denkbar einfach, für jedes Recht wird ein neuer Datensatz erzeugt, den man durch die UserID genau einem User eindeutig zuordnen kann. Im weiteren brauchst du natürlich noch eine Funktion um die Rechte des jeweiligen Users zu erhalten.

PHP-Code:
// liefert die Rechte eines Users ..
    
function getRights()
    {
        
$rights = array();
        
// .. indem die Rechte eines User aus der Datenbank ausgewählt werden..
        
if(isset($_SESSION['UserID'])){
            
$sql "SELECT
                            Recht
                    FROM
                            User_Rechte
                    WHERE
                            UserID = '"
.$_SESSION['UserID']."'
                   "
;
            
$result mysql_query($sql) OR die ("<pre>\n".$sql."</pre>\n".mysql_error());
            
$rights = array();
            
// .. und als array zurückgegeben werden
            
while($row mysql_fetch_assoc($result))
                    
$rights[] = $row['Recht'];
        }
        return 
$rights;
    } 
Damit sind die Rechte aus der Datenbank geholt, aber sie sind noch nicht dauerhaft verfügbar, deshalb sollten sie noch in einer Session gespeichert.
Und dann kann man mit einer simplen Abfrage ganz einfach schauen, ob ein User das Recht besitzt die Seite zu besuchen.

PHP-Code:
if(!isset($_SESSION['Rechte']) OR !in_array('Admin'$_SESSION['Rechte']))
        die(
"Sie haben keine Berechtigung, diese Seite zu betreten!\n"); 
TerraX ist offline  
Alt 13.03.2009, 14:31  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Und immer wieder drehen wir uns im Kreis. Rechteverwaltung ohne Gruppen ist schlicht unflexibel.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 13.03.2009, 14:36  
Neuer Benutzer
 
Registriert seit: 13.03.2009
Beiträge: 6
TerraX befindet sich auf einem aufstrebenden Ast
Standard

Eine Gruppe hinzu zu fügen ist ja nicht das Ding oder? Ich meine eine weitere Tabelle oder auch einfach die oben angegebene zu modifizieren ist ja nicht gerade schwer.

Geändert von nikosch (13.03.2009 um 18:09 Uhr). Grund: Versehen / falschen Ändern Button erwischt.
TerraX ist offline  
Alt 13.03.2009, 18:07  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Es geht aber darum, die Rechte dann den Gruppen zuzuordnen. Sonst brauchst Du ja keine. Und wenn man das so weit erweitert, bleibt von Deiner "vernünftige[n] SQL-Tabelle" ja nicht mehr viel übrig.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mehrdimensionales Array in Klasse erstellen Nixwisser PHP Tipps 2007 2 01.08.2007 14:30
Ordner mit PHP erstellen PHP Tipps 2006 3 18.06.2006 20:54
Anker erstellen fachinformatiker HTML, Usability und Barrierefreiheit 5 17.05.2006 10:18
Gästebuch auf PHP Basis erstellen - verzweifel ... sanctus PHP Tipps 2006 3 23.04.2006 15:33
darf keine Datenbank erstellen in phpMyAdmin Datenbanken 2 20.10.2005 19:32
Icons für Pocket-Pcs erstellen? Locutus007 Off-Topic Diskussionen 0 19.08.2005 14:38
Eindeutiger Zähler erstellen geht nicht bendigo Datenbanken 1 18.08.2005 11:36
Wie in DOM eine Textbox erstellen? HTML, Usability und Barrierefreiheit 2 16.08.2005 13:12
Tabellen erstellen mit einer install.php Datenbanken 2 27.07.2005 23:59
Fehler beim erstellen von Dateien PHP Tipps 2005 8 26.05.2005 12:04
Stammbaum erstellen Riot PHP Tipps 2005 17 13.05.2005 16:32
Ordner erstellen und Datei uploaden Juuro PHP Tipps 2005 6 20.01.2005 21:18
[Erledigt] Ordner erstellen mit Rechten des angemeldeten Benutzers PHP-Fortgeschrittene 1 27.10.2004 14:57
Ordner per Skript erstellen --> Rechte Problem PHP Tipps 2004 2 06.07.2004 14:19
[Erledigt] Navigationsleiste mit Datenbank erstellen Datenbanken 10 22.06.2004 20:30

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php nutzerverwaltung, nutzerverwaltung, php rechteverwaltung erstellen, nutzerverwaltung erstellen, php eimfache nutzerverwaltung, benutzer mit verschiedenen rechten anlegen php, php mysql rechteverwaltung

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:27 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum