 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
20.05.2004, 10:41
|
#1
|
|
TP-Member
Registriert seit: Apr 2004
Ort: Ulm / Potsdam
|
User Rechte
Guten morgen an alle die das hier lesen,
habe vor auf meiner Seite verschiede Bereiche einzurichten, wo also die einzelen User verschieden Rechte bekommen. Leider kenne ich mich mit PHP noch nicht so gut aus. Aber ich hoffe es kann mir hier einer helfen.
Hier schrieben ich erst mal, was für User es gibt:
- Admin der darf auf der Seite alles machen. Also berichte schreiben und Löschen usw....
- Redaktion die darf nur Berichte Schreiben
- User der darf einfach auf der Seite Serven
So nun hoffe ich, dass mir dabei einer helfen kann.....
Liebe Grüße,
Nadine
|
|
|
20.05.2004, 11:21
|
#2
|
|
TP-Insider
Registriert seit: May 2003
Ort: Aachen
|
Sowas ist recht einfach umzusetzen..
Du trägst für jeden User einen "Rang" ein, der die Benutzerrechte bestimmt..
also zB.: 0=User; 1=Moderator; 2=Admin usw
Und dann machst du einfach vor dem ausführen der Aktion eine Rechteabfrage.
Kannst das ganze dann auch in verschiedene Dateien auslagern..
admin.php; mod.php
Und auf die dürfen nur die jeweiligen Benutzergruppen drauf zugreifen.
__________________
"Man muss die Welt nicht verstehen, man muss sich nur darin zurechtfinden."
Einstein
|
|
|
20.05.2004, 12:41
|
#3
|
|
TP-Member
Registriert seit: Apr 2004
Ort: Ulm / Potsdam
|
HiHi,
wie meinst du das mit den einzelen Abfragen dann, wie muss ich das machen. Also hich kann dir mal ein Code hier posten, dann kannst du mir ja mal ein wenig helfen währe das Ok für dich ?
Gruß Nadine
|
|
|
20.05.2004, 12:53
|
#4
|
|
TP-Member
Registriert seit: Apr 2004
Ort: Ulm / Potsdam
|
-- Nachtrag --
Das hier ist meine Login Datei
PHP-Code:
<?PHP
session_start();
session_register(nummer);
session_register(nickname);
session_register(nachname);
session_register(vorname);
session_register(pass);
session_register(e_mail);
session_register(geschlecht);
session_register(gebdat);
session_register(status);
include("connection.php");
$table="user";
//echo"name : " .$name ."<br> kennwort : " .$kennwort ."<br>";
if ($name=="")
{
session_destroy();
include("badlogin.php");
}
else
{
$verbindung = @mysql_connect("localhost","web103","erolisa");
if (!$verbindung) {
echo "Keine Verbindung möglich!\n";
exit;
}
$abfrage = "SELECT * FROM $table where Nick='$name'";
$ergebnis = mysql_db_query($datenbank,$abfrage,$verbindung);
while (list($ID,$Nick,$Name,$Vorname,$Passwort,$Email,$Geschlecht,$Geburt,$Status) = mysql_fetch_row($ergebnis))
{
$nummer=$ID;
$nickname=$Nick;
$nachname=$Name;
$vorname=$Vorname;
$pass=$Passwort;
$e_mail=$Email;
$geschlecht=$Geschlecht;
$gebdat=$Geburt;
$status=$Status;
}
mysql_close($verbindung);
if($kennwort==$pass)
{
//Login erfolgreich
//echo"from Var.: " .$from;
if($from=="")
{
include("badlogin.php");
}
else
{
//include($from);
echo"
<title>Potsdam by team-potsdam.de - das Online-Magazin aus deiner Stadt</title>
<meta name='author' content='NC-solutions'>
<meta name='generator' content='HTML-Editor'>
<meta http-equiv='refresh' content='2; URL=$from'>
</head>
<body><center>
<b>Hallo $nickname ,du hast dich erfolgreich eingeloggt.</b><br>
Du wirst in 2 Sekunden weitergeleitet! Wenn dein Browser keine automatische Weiterleitung unterstützt, klicke <a href='$from'><b>hier</b></a>
</center></body>
</html>
";
}
}
else
{
//Login nicht erfolgreich
session_destroy();
include("badlogin.php");
}
}
?>
|
|
|
20.05.2004, 13:28
|
#5
|
|
TP-Insider
Registriert seit: May 2003
Ort: Aachen
|
Mit den Abfragen meine ich das so..
Sagen wir mal, du bist Admin, hast also den Status 2., ich bin user mit status 0:
Wenn du jetzt irgendwas machen willst, was nur ein admin darf, fragt das script nach der berechtigung, also:
PHP-Code:
if ($status==2){
........
}else
echo "Nicht die benötigte Berechtigung";
Bei Dir würde das Script alles in der IF Abfrage ausführen, weils ja TRUE ist, bei mir würde der Fehler kommen, weil FALSE
__________________
"Man muss die Welt nicht verstehen, man muss sich nur darin zurechtfinden."
Einstein
|
|
|
20.05.2004, 13:45
|
#6
|
|
TP-Member
Registriert seit: Apr 2004
Ort: Ulm / Potsdam
|
Hallo,
und wo müsste ich dann den Code einbauen und wie gehts dann weite also wenn der User 2 hat wie kann man das dann machen, dass er dann mehr machen kann ? Muss man dann jedesmal nee neue Seite haben oder wie geht das genau ?
Gruß Nadine
|
|
|
20.05.2004, 13:49
|
#7
|
|
Guest
Registriert seit: Aug 2002
|
.
Geändert von Strogij (20.05.2004 um 14:59 Uhr).
|
|
|
20.05.2004, 13:53
|
#8
|
|
TP-Member
Registriert seit: Apr 2004
Ort: Ulm / Potsdam
|
Jetzt verstehe ich gar nichts mehr :-(
|
|
|
20.05.2004, 13:54
|
#9
|
|
Guest
Registriert seit: Aug 2002
|
Zitat:
|
Zitat von Nadine_aus_Ulm
Hallo,
und wo müsste ich dann den Code einbauen und wie gehts dann weite also wenn der User 2 hat wie kann man das dann machen, dass er dann mehr machen kann ? Muss man dann jedesmal nee neue Seite haben oder wie geht das genau ?
Gruß Nadine
|
Du müsstest dann von jedem User eine Nummer haben, die auf jeder Seite bekannt ist. Da du wie ich sehe mit Sessions arbeitest, müsste es dir nicht schwer fallen, eine weitere Session-Variable zu definieren, die diesen Wert hat, dh. es muss aus der Datenbank ausgelesen werden (jeder User hat in dem Datensatz so eine Nummer).
|
|
|
20.05.2004, 14:00
|
#10
|
|
TP-Insider
Registriert seit: May 2003
Ort: Aachen
|
Du kannst dir ja so auch beliebig viel Rechte vergeben..
Nimmst einfach für jede neue Rechtekombination ne neue Zahl..
Ist ja auch nur ein Beispiel gewesen..
So hab ichs zumindest für meine Seite gelöst...
__________________
"Man muss die Welt nicht verstehen, man muss sich nur darin zurechtfinden."
Einstein
|
|
|
20.05.2004, 14:08
|
#11
|
|
TP-Member
Registriert seit: Apr 2004
Ort: Ulm / Potsdam
|
Zitat:
|
Du müsstest dann von jedem User eine Nummer haben, die auf jeder Seite bekannt ist. Da du wie ich sehe mit Sessions arbeitest, müsste es dir nicht schwer fallen, eine weitere Session-Variable zu definieren, die diesen Wert hat, dh. es muss aus der Datenbank ausgelesen werden (jeder User hat in dem Datensatz so eine Nummer).
|
Hi,
jupp vor jedem User steht eine ID. Diewird ja selber vergeben. Aber wie kann ich dann zuodnen, dass der User den Status " 2 " hat oder dass er " 0 " hat ? Ok dass kann ich noch in der DB angeben aber dass muss ja dann auch abgefragt werden ? Und wie kann ich die Sessions schrieben mit der Nummer ? 
|
|
|
20.05.2004, 14:13
|
#12
|
|
TP-Insider
Registriert seit: May 2003
Ort: Aachen
|
Du fügst einfach in deine Usertabelle in der Datenbank noch eine weitere Spalte ein mit dem Rang.
Jeder User erhält dann die 0, und die Leute die dann mehr machen dürfen, musste dann eben selber ändern.
Und wie dus aus der DB ausliest, solltest du eigentlich wissen, und wie dus in die Session speicherst auch.
Aber noch ein Tip..
session_register ist nicht mehr in..
man sollte $_SESSION[] benutzen um die Sessionvariablen zu benutzen und zu "beschreiben"
__________________
"Man muss die Welt nicht verstehen, man muss sich nur darin zurechtfinden."
Einstein
|
|
|
20.05.2004, 14:15
|
#13
|
|
Guest
Registriert seit: Aug 2002
|
Genau, das muss abgefragt werden, und an die Session kannst du es auch in deiner while-Schleife überweisen wie alles andere auch ($nummer, $nick...).
|
|
|
20.05.2004, 14:17
|
#14
|
|
TP-Member
Registriert seit: Apr 2004
Ort: Ulm / Potsdam
|
HiHi,
das habe ich gerade geamcht, also die Tabelle eingefügt. Aber was ich noch nicht richtig verstanden habe, wenn ich dann mit Session arbeite, dann brauch ich doch auch für jedees Recht also 0 - 2 auch eigene Seite wo dann alle etwas anderes aussehen oder ?
|
|
|
20.05.2004, 14:19
|
#15
|
|
TP-Member
Registriert seit: Apr 2004
Ort: Ulm / Potsdam
|
Zitat:
while (list($ID,$Nick,$Name,$Vorname,$Passwort,$Email,$G eschlecht,$Geburt,$Status) = mysql_fetch_row($ergebnis))
{
$nummer=$ID;
$nickname=$Nick;
$nachname=$Name;
$vorname=$Vorname;
$pass=$Passwort;
$e_mail=$Email;
$geschlecht=$Geschlecht;
$gebdat=$Geburt;
$status=$Status;
}
mysql_close($verbindung);
if($kennwort==$pass)
|
da wird der Startus ja schon abgefragt..... gelle
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| 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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 10:59 Uhr.
|
 |