Gruppenbefugnisse ändern --> Adminstatus weg

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.
Benutzeravatar
-Jo-
Mitglied
Beiträge: 617
Registriert: 08.04.2005 12:05
Wohnort: NRW

Beitrag von -Jo- »

Wenn es jetzt einen offiziellen Bugfix dafür gibt, muss ich dann den von andreasOymann genannten Vorschlag (der ja auch gut funktionierte!) wieder komplett deinstallieren und aif den offiziellen Bugfix ändern, oder kkann ich einfach die Zeile

Code: Alles auswählen

            WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level != " . ADMIN; 
in

Code: Alles auswählen

          WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level = " . MOD;
ändern?

Oder "beißen" sich die beiden Code-Änderungen?
Ca. 80% aller Computerprobleme sitzen vor dem Bildschirm!
Christian_N
Mitglied
Beiträge: 513
Registriert: 29.09.2004 14:23

Beitrag von Christian_N »

Ein beißen wird da wohl kaum geben, da du eigentlich nur die änderrung von andreasOymann in den offizelle bugfix umänderst also die

Code: Alles auswählen

WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level != " . ADMIN; 
änderst ja dann in

Code: Alles auswählen

WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level = " . MOD;
Somit hast dann den offizelle Bugfix drin und von andreasOymann den drausse.... da bei ihm eigentlich nur die reihe:

Code: Alles auswählen

WHERE user_id IN (" . implode(', ', $group_user) . ")";
in

Code: Alles auswählen

WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level != " . ADMIN; 
geändert wurde, er hatte es allerdings größer eingegrenzt also ein größere teil zum suchen gemacht und somit ein großere teil zum ändern aber am ende wurde nur die eine reihe geändert wenn mal die vergleichen tun fällt es auf.

Somit brauchst den von andreasOymann nicht erst löschen oder so da sobald die änderrung machst so wie sie selbst schriebst hast die reihe von andreasOymann in den offizelle Bugfix geändert :)

Wieso allerdings bei dem offizelle Bugfix des level MOD lauten tut, weiss ich nicht so recht, da ich wie ich las nur die Adminrechte verloren gegangen sind?

Dann müsste ja auch ein Moderator die Moderatoren rechte verloren haben damit, so das dann jetzt durch MOD dann Moteratoren und Admin die rechte behalten, oder versteh ich da was falsch?

Gruß SuesseMaus28884
pokepika
Mitglied
Beiträge: 167
Registriert: 01.07.2003 15:58
Wohnort: Iserlohn [NRW]
Kontaktdaten:

Beitrag von pokepika »

SuesseMaus28884 hat geschrieben:Wieso allerdings bei dem offizelle Bugfix des level MOD lauten tut, weiss ich nicht so recht, da ich wie ich las nur die Adminrechte verloren gegangen sind?

Dann müsste ja auch ein Moderator die Moderatoren rechte verloren haben damit, so das dann jetzt durch MOD dann Moteratoren und Admin die rechte behalten, oder versteh ich da was falsch?
!= ADMIN
und
= MOD

da sind unterschiede im gleich.
Christian_N
Mitglied
Beiträge: 513
Registriert: 29.09.2004 14:23

Beitrag von Christian_N »

versteh ich nicht so ganz, jedenfalls schon klar das da unterschieden geben, ADMIN = nur admins MOD = Moderatoren und Admins, aber wieso wurde beim offizelle Bugfix MOD also Moteratoren und Admins gemacht, haben auch Moteratoren die rechten verloren gehabt?
pokepika
Mitglied
Beiträge: 167
Registriert: 01.07.2003 15:58
Wohnort: Iserlohn [NRW]
Kontaktdaten:

Beitrag von pokepika »

!= ADMIN
schließt alle anderen mit ein, also MOD, USER und evtl. auch andere User, die bei Mods hinzukommen.

= MOD
meint nur die Moderatoren.
Christian_N
Mitglied
Beiträge: 513
Registriert: 29.09.2004 14:23

Beitrag von Christian_N »

Aso ist das alles klar, aber dann ist doch wieder das Problem das die ADMINs die rechte verlieren?!?!? etwas komisch irgendwie.
Bootenks
Mitglied
Beiträge: 1
Registriert: 14.05.2005 08:37

Beitrag von Bootenks »

Nein die Admins verlieren da ihre Adminrechte nicht da wie schon erwähnt

!= ADMIN bedeutet dass nur der user_level ADMIN in diesem Zusammenhang nicht in diese SQL Abfrage eingespannt wird

= MOD bedeutet dass ausschliesslich die Mods in der SQL Abfrage berücksichtigt werden (was logischerweise damit das selbe wie != ADMIN behinhaltet und dazu noch den SQL Anweisung für alle ausser user_level MOD blockiert)

Was ich nicht weiss ist ob es den Bug mit den MOD´s fixed... aber den hatte ich bis dato auch noch nicht persönlich gesehen.

Code: Alles auswählen

		if (sizeof($group_user))
	      {
      		$sql = "UPDATE " . USERS_TABLE . "
	            	SET user_level = " . USER . "
	            	WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level = " . MOD;
Diese Funktion die muss man auch mal verstehn ^^". Die wird genau dann angewendet wenn sizeof($group_user) existiert sprich mind. 1 ist. $group_user wird mit den id´s der Gruppenmitglieder als Array gespeichert. Das implode in der WHERE CLAUSE dient ja nur das Array group_user mit Kommata jeweils hintereinader zu schreiben. Also besagt die Where Abfrage: Wenn die user_id gleich der id in dem array group_user und das user_level gleich MOD ist, dann und nur dann wird das user_level der besagten Person geändert. Hier komme ich zu dem Punkt an dem ich die Funktion nicht mehr in ihrer "Funktion" begreife. Wozu sollte da das Level verändert werden?? Würde mich freuen wenn mich da einer aufklärt.
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Beitrag von Helmut »

Hallo,

also bei mir schaut der Bereich in der admin/admin_ug_auth.php etwas anders aus.

Code: Alles auswählen

		if ( $unset_mod != '' )
		{
			$sql = "UPDATE " . USERS_TABLE . " 
				SET user_level = " . USER . " 
				WHERE user_id IN ($unset_mod)";
			if( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't update user level", "", __LINE__, __FILE__, $sql);
			}
		}

Ich habe am 25.04.2005 die deutsche Version vom 2.0.14 hier heruntergeladen und die Version von der admin_ug_auth.php ist : $Id: admin_ug_auth.php,v 1.13.2.5 2004/03/25 15:57:20 acydburn Exp $. Soll ich die alte admin_ug_auth.php einfach durch die neue admin_ug_auth.php vom aktuellen Download des 2.0.15 Deutsch ersetzen, oder würde das Probleme machen?

Gestern habe ich das Patsch 2.0.14_to_2.0.15 heruntergeladen und ausgeführt, somit hat das Forum nun die Version 2.0.15.

Gruß Helmut


P.S. Es ist nicht mein Forum, sondern ich habe es für jemand anderes eingerichtet.
Ich bin nicht ganz dicht.... na und.
Benutzeravatar
oxpus
Ehemaliges Teammitglied
Beiträge: 5389
Registriert: 03.02.2003 12:33
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Wenn an der Datei nie was geändert wurde, kannst Du die einfach austauschen.
Grüße
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
daPeda
Mitglied
Beiträge: 2
Registriert: 16.05.2005 23:07

Patch hilft bei mir nicht.

Beitrag von daPeda »

Vor eineinhalb Stunden habe ich die Admin-Rechte verloren, nachdem ich lediglich eine Gruppe angelegt hatte - es war die erste.

Ich habe sowohl den hier ursprünglich genannten != ADMIN- als auch dann den 'offiziellen' Patch in admin_ug_auth.php gemacht und werde noch immer als user ohne Administrator-Rechte geführt.

In der Datenbank nachgesehen habe ich die Rechte allerdings.

Irgendwas gröberes hat's hier.

Auf 2.0.6 (die einzig ältere Version die ich noch bei mir gefunden habe) kann ich wohl nicht zurückgehen, da es ja seither eine Änderung in der DB-Struktur gegeben hat, oder?
Antworten

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