Hallo,
ich habe folgendes Problem: Ich habe für meine Homepage einen Adminbereich erstellt, indem sich alle User mit Hilfe ihrer Forendaten einloggen können. Das funktioniert auch ganz gut, nur möchte ich jetzt verschiedene Menüpunkte zur Verfügung stellen, die nur von bestimmten Benutzergruppen durchführbar sind. Also eine IF Abfrage, in der abgefragt wird, ob der gerade eingeloggte User in der richtigen Gruppe ist.
Ich habe leider keine Ahnung, welche Daten ich dafür brauche, da ich zwar die Einträge aus der Tabelle USER abfregen kann, aber die Gruppen ja in einer extra Tabelle gespeichert sind. Es wäre nett, wenn mir jemand helfen könnte!
MfG
Nick Verstehn
Frage zu den Benutzergruppen
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Reden wir hier gerade von phpBB, von deiner Homepage oder von einer Mischung von beiden. So ganz klar wird mir das nämlich nicht...
Gruß, Philipp
Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
-
Gast
if ($userdata['user_id'] == 5)Hallo,
tut mir leid, ich hab mich etwas unklar ausgedrückt
. ALso es ist eindeutig eine Mischung aus beiden, aber was ich benötige, ist nur ein Befehl:
Wie kann ich per PHP Befehl aus der phpBB Datenbank feststellen, ob sich der der eingeloggte User in einer bestimmten Gruppe befindet?
Den Usernamen oder die UserID kann ich ja so auslesen:
So kann ich ja leicht feststellen, ob der einzelne User die beötigten Rechte hat, den Link zu klicken, indem ich abfrage:
Ich möchte es mir aber einfacher machen, und nach der Gruppe fragen, denn bei mehrern Usern pro Gruppe ist es natürlich einfacher, nur eine Abfrage zu machen, als zu fragen:
Also in etwa so:
Aber da es halt diese "gruppennumer_id" nicht gibt, wollt ich wissen, wie ich es lösen kann.
Ich hoffe, ich habs diesmal geschafft, mich verständlicher auszudrücken
MfG
Nick Verstehn
tut mir leid, ich hab mich etwas unklar ausgedrückt
Wie kann ich per PHP Befehl aus der phpBB Datenbank feststellen, ob sich der der eingeloggte User in einer bestimmten Gruppe befindet?
Den Usernamen oder die UserID kann ich ja so auslesen:
Code: Alles auswählen
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
echo $userdata['username'];
echo $userdata['user_id'];
Code: Alles auswählen
if ($userdata['user_id'] == XXX)
{
erlaubt
}
Code: Alles auswählen
if ($userdata['user_id'] == XXX or $userdata['user_id'] == YYY or ...)
Code: Alles auswählen
if ($userdata['gruppennumer_id'] == "benötigte Gruppennummer")
Ich hoffe, ich habs diesmal geschafft, mich verständlicher auszudrücken
MfG
Nick Verstehn
Die Gruppenzuordnungen sind in der phpbb_user_group gespeichert. Da musst du mit 'ner entsprechenden SQL-Abfrage zugreifen und das Ergebnis auswerten.
Gruß, Philipp
Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
-
Gast
Hallo und danke,
ich habe es probiert, stehe aber leider immernoch vor einem etwas größerem Problem. Ich habe leider von MySQL fast gar keine Ahnung, und deswegen krieg ich wohl auch keine vernünftige Abfrage hin. Mein Code:
Jetzt kann ich leider nur feststellen, ob der User in der richtigen Gruppe ist, wenn er der erste User der Gruppe ist, da in der "phpbb_user_group " Tabelle leider nicht für jede Gruppe nur eine Zeile mit allen dazugehörigen Usern eingetragen ist, sondern für jeden USern jedesmal wieder eine neue Zeile, also:
Mit meiner Abfrage krieg ich immer nur mit dem eingeloggten User 5 ein positives Abfrageergebnis, obwohl ja auch User 9 und 88 in der GRuppe sind. Diese würden dann aber nicht erkannt. Deswegen wäre ich sehr froh, wenn mir jemand einen besseren oder erweiterten Abfragebefehl geben könnte, der auch alle anderen User erkennt, und nicht nur den ersten!
Mir ist schon klar, das es mit dem $i zusammenhängt, ich habe es aber leider nicht geschafft, eine funktionierende Schleife zu erstellen, die alle User abfragt. Was muss ich tun?
MfG und danke schonmal für alle Mühen
Nick Verstehn
ich habe es probiert, stehe aber leider immernoch vor einem etwas größerem Problem. Ich habe leider von MySQL fast gar keine Ahnung, und deswegen krieg ich wohl auch keine vernünftige Abfrage hin. Mein Code:
Code: Alles auswählen
$i=0;
$user_gruppenid = mysql("FORENDB" select * from phpbb_user_group where group_id=XX");
mysql_fetch_object($user_gruppenid);
$user_gruppenid = (mysql_result($user_gruppenid,$i,user_id));
if ($userdata['user_id'] == $user_gruppenid)
{
echo " $user_gruppenid ";
}
else
{
echo " nix ";
}
Code: Alles auswählen
Group_id User_ID
25 5
25 9
25 88
Mir ist schon klar, das es mit dem $i zusammenhängt, ich habe es aber leider nicht geschafft, eine funktionierende Schleife zu erstellen, die alle User abfragt. Was muss ich tun?
MfG und danke schonmal für alle Mühen
Nick Verstehn
