Einer Gruppe einen Spezialrang per sql command zuweisen.

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
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.
Antworten
dkarusell
Mitglied
Beiträge: 4
Registriert: 18.03.2008 16:55

Einer Gruppe einen Spezialrang per sql command zuweisen.

Beitrag von dkarusell »

Hallo,

Kurz: Allen Membern einer Gruppe per sql command einen Spezialrang zuweisen.

Lange Version:

Mein Problem sieht folgendermaßen aus...

Ich habe eine Gruppe und alle Mitglieder dieser Gruppe haben eine Spezialrang ( Erstsemestler).
Jetzt möchte ich aber diesen Spezialrang(Erstsemestler) durch einen anderen ersetzten (Zweitsemesteler) und die Leute die sich nun anmelden den Erstsemestler rang später zuweisen...

In der Vergangenheit habe ich dies auch schon mit sql command gemacht, leider habe ich diesen Vergessen... bzw. ich krieg ihn nicht mehr hin..

Kann mir da jemand von euch helfen?

vielen dank im vorraus


ps: Ich bin mir leider nicht ganz sicher ob dies das richtige Forum dafür ist, wenn es das Falsche ist bitte ich dies zu entschuldigen...
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Das Forum passt denke ich ganz gut. Der Befehl wird aber ein bisschen komplexer weil Daten aus mehreren Tabellen gebraucht werden, eventuell läuft er auch gar nicht wenn die Datenbank zu alt ist, dann musst du ein Skript benutzen dass den Befehl dann in zwei einfachen Schritten ausführen kann.

Erst mal musst du die ID des Rangs rausfinden den du vergeben willst. Dazu in die Tabelle phpbb_ranks schauen.

Dann brauchst du die ID der Gruppe in der du die Änderung machen willst, die kannst du auslesen indem du im Forum zur Gruppe navigierst und in der Adresszeile nachsiehst.

Dann kommt der SQL Befehl:

Code: Alles auswählen

UPDATE
	phpbb_users
SET
	user_rank = {ID des RANGS}
WHERE
	user_id IN(
	SELECT user_id FROM phpbb_user_group WHERE group_id = {ID der GRUPPE}
	);
Und bitte die Datenbank vorher sichern!
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
dkarusell
Mitglied
Beiträge: 4
Registriert: 18.03.2008 16:55

Beitrag von dkarusell »

Gibt diesen Fehler aus:

Code: Alles auswählen

UPDATE phpbb_users SET user_rank = {4} WHERE user_id IN (

SELECT user_id
FROM phpbb_user_group
WHERE group_id = {109}
) 

MySQL said:  

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '4}
WHERE
   user_id IN(
   SELECT user_id FROM phpbb_user_group WHERE group_i' at line 4
Hier habe ich die Group id her:

Code: Alles auswählen

groupcp.php?sid=321a7c7ef651064eef93d96f1514cfcf&g=109
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

ohne die { } :wink:
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
dkarusell
Mitglied
Beiträge: 4
Registriert: 18.03.2008 16:55

Beitrag von dkarusell »

S2B hat geschrieben:ohne die { } :wink:
oha ^^ vielen dank

funzt nun wunderbar!
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“