Fehler bei Moderatoren zuweisung

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
Benutzeravatar
Tobi91
Mitglied
Beiträge: 222
Registriert: 17.03.2006 17:58
Wohnort: Völklingen (Saarland)
Kontaktdaten:

Fehler bei Moderatoren zuweisung

Beitrag von Tobi91 »

Hallo, ich habe ein problem.

wenn ich einem User den Moderatoren Status geben will (also einstellen will wo er Mod ist) erhalte ich folgende Fehlermeldung:

Code: Alles auswählen

Couldn't update private forum permissions

DEBUG MODE

SQL Error : 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 ' 1)' at line 2

INSERT INTO phpbb_auth_access (forum_id, group_id, auth_mod) VALUES (7, , 1)

Line : 412
File : admin_ug_auth.php
was bedeutet das und was ist falsch?


Diese Mods hab ich drin:

Categories Hierarchie Mod 2.0.4 Final
Announces Suite 3.0.2
Split topic type Mod 2.0.1
Birthday Mod 1.5.6
Birthday Addon Zodiac 1.0.5
Birthday Addon Chinese Zodiac 1.0.1
Birthday Addon Chinese Zodiac in Viewtopic 1.0.0
Gender Mod 1.2.6
Attachment Mod 2.4.1
Junior Admin Mod 2.0.5
Today at / Yesterday at Mod 1.2.2
Color Groups Mod 1.2.0 incl. Oxpus Speed up Color Groups Mod
Last Visit Mod 1.2.8
Country Flags Mod 2.2.0
Anti Robotic Reg 1.1.4
EzPortal Mod 2.1.8
Pafiledb Mod 0.0.9d
Photo Album 2.0.51
Photo Album Block Add-on 0.9.2
Posts Icons Mod 1.0.1
Topic Calendar Mod 1.0.1
Default Avatar Mod 1.0.0
Advanced Quick Reply Mod 1.1.1
Recent Topics Block for Smartor's ezPortal 1.0.0
Online Offline Status Mod 1.3.2
Staff Site Mod 2.2.0
Bookmarks Mod 1.1.1a
Admin Account Actions 1.2.1
Admin User Register Mod 0.10.4
Complete Banner Mod 1.3.6
Ranks summarize Mod 1.0.4
Number of Posts since last visit Mod 1.0.2
Glow and Shadow effects BBcode Mod 2.0.6
Shoutbox Mod 1.1.5
Slash News Mod 1.0.1
Heavy Integration of Slash News Mod into EzPortal
Smilie Creator Mod 1.0.3
Supercharged Album Pack 1 for Smartors Album Mod
Tell a Friend Mod (unknown Version)
FI Navslices Mod (Viewtopic)
Who viewed a Topic Mod 1.0.3
Print this Topic Mod 1.0.0 (unknown Version)
Recent Topics Mod 1.2.2
Hacks/Mods List 1.2.0
Private Message Info in Browser Status Bar 1.0.0
BBCode Highlight 1.2.0
BBCode FlipV / FlipH Mod 1.6.0
Left and Right IMG tags 1.6.0
PHP Syntax Highlighter BBCode 3.0.3
Board Statistics Mod 2.1.5
Advanced Links Mod 1.2.2b
Topic View Page Bottom Link
Smartors Photo Album Addon 2.x View Topic Link
Smartors Photo Album Addon 2.x Member List Link
Smartors Photo Album Addon 2.x View Profile Link
Google Search BBCode Mod 1.1.2
Yellow Card Mod 1.4.11
Protect user account Mod 1.2.9
BBCode Line-through Mod 1.0.2
Topic Description Mod 1.0.5
Prune users Mod 1.4.3
eXtreme Styles mod 2.3.1
Count Posts Mod 1.0.0
BBCode Box Mod 4.5.0
Topic in Who is online Mod 1.2.9
Bottom aligned signature Mod 1.0.3
Admin Userlist 1.1.0
Admin Email List 1.0.2
Minical 2.0.4 beta
Moved Folder Mod 1.0.0
Kontakt Mod 1.0.0
Acronyms Mod 0.9.5
Disable Board Message Mod 1.0.0
Signature Editor/Preview Deluxe 1.0.0
ezPortal Admin for phpBB2
Absent User Mod 1.1.7
Album Hierarchy Mod 1.1.0
Portal Polls Upgrade 2.0.0
Modcp Extension 1.1.3
Simply Merge Threads 1.0.1
Dates for Humans Mod 1.0.1
Descriptive Time Zone Mod 1.0.2
Search Form in Viewforum 1.0.1
Google Visit Counter 1.0.0
Fix message_die for multiple errors MOD 1.0.3
Search Engine ShortURLs Mod 1.0.0
Cracker Tracker Professional 4.1.1
Run stats 1.0.2
Visual Confirmation for Guests 1.0.0
Custom Profile Fields 1.0.6
AJAX features 1.0.0
Advanced Visual Confirmation 1.1.0
Benutzeravatar
Slytherin
Mitglied
Beiträge: 1771
Registriert: 11.03.2005 17:52
Wohnort: Hogwarts
Kontaktdaten:

Beitrag von Slytherin »

Wow ne ganz schön grosse Liste an Mods :D
Verlink mal deine admin_ug_auth.php, bitte :wink:

Slytherin
Benutzeravatar
Tobi91
Mitglied
Beiträge: 222
Registriert: 17.03.2006 17:58
Wohnort: Völklingen (Saarland)
Kontaktdaten:

Beitrag von Tobi91 »

Hier ist die Datei:

http://tobi1903.to.funpic.de/admin_ug_auth.txt

Hoffe jemand findet den Fehler.

Danke.

Tobi91
Benutzeravatar
Slytherin
Mitglied
Beiträge: 1771
Registriert: 11.03.2005 17:52
Wohnort: Hogwarts
Kontaktdaten:

Beitrag von Slytherin »

Versuch mal das hier.
Ersetze das hier

Code: Alles auswählen

INSERT INTO " . AUTH_ACCESS_TABLE . " (forum_id, group_id, $sql_field)
VALUES ('$forum_id', '$group_id', '$sql_value')";
mit

Code: Alles auswählen

$sql = "INSERT INTO " . AUTH_ACCESS_TABLE . " (forum_id, group_id, $sql_field) 
VALUES ($forum_id, $group_id, $sql_value)";
So stehts im Original. Wird aber wohl nicht die Fehlermeldung beseitigen.

Slytherin
Zuletzt geändert von Slytherin am 29.04.2006 15:14, insgesamt 1-mal geändert.
Benutzeravatar
cYbercOsmOnauT
Ehemaliges Teammitglied
Beiträge: 3820
Registriert: 18.02.2004 23:02
Wohnort: Göttingen
Kontaktdaten:

Beitrag von cYbercOsmOnauT »

-hust- Slytherin, schaust Du Dir eigentlich die Fehlermeldungen auch genauer an bevor Du antwortest? Was soll es bringen, wenn man die einfachen Anführungsstriche bei den Werten weg macht? Für mySQL ist es egal, ob Werte für eine INT-Zelle als Zahlenwert oder String übergeben werden. Deine Hilfe ist somit (hierbei) sinnlos.

Die Fehlermeldung besagt, dass der Wert für die group_id leer an die Datenbank übergeben wird und dies nicht sein darf.

Der Wert für die group_id wird im Script durch die Variable $group_id definiert. Diese wird scheinbar nicht gesetzt.

Was mir aufgefallen ist (Was aber eigentlich nicht der Fehler sein dürfte, es sei denn, Du verwendest ein sehr alten PHP), steht ziemlich weit oben in Deinem admin_ug_auth.php.

Dort findet sich

Code: Alles auswählen

while( list($var, $param) = @each($params) )
{
	if ( !empty($_POST[$param]) || !empty($_GET[$param]) )
	{
		$$var = ( !empty($_POST[$param]) ) ? $_POST[$param] : $_GET[$param];
	}
	else
	{
		$$var = "";
	}
}
Normal muss da aber stehen

Code: Alles auswählen

while( list($var, $param) = @each($params) )
{
	if ( !empty($HTTP_POST_VARS[$param]) || !empty($HTTP_GET_VARS[$param]) )
	{
		$$var = ( !empty($HTTP_POST_VARS[$param]) ) ? $HTTP_POST_VARS[$param] : $HTTP_GET_VARS[$param];
	}
	else
	{
		$$var = "";
	}
}
Wie gesagt, wenn auf Deinem Server nicht zufällig ein altes PHP installiert ist, macht diese Änderung keinen Unterschied. Aber probier es mal aus.

Grüße,
Tekin
• prof. phpbb-Installation, Reparatur, Rettung nach Hackattacken, sowie PHP/JS Programmierung aller Art
Zend Certified Engineer, Linux Administrator und die Sicherheit von 34 Jahren Programmiererfahrung
• Interesse? Kontakt unter t.birduezen@web-coding.eu
Benutzeravatar
Tobi91
Mitglied
Beiträge: 222
Registriert: 17.03.2006 17:58
Wohnort: Völklingen (Saarland)
Kontaktdaten:

Beitrag von Tobi91 »

jetzt erhalte ich folgende fehlermeldung:

(das von Slytherin hatte ich auch mal ausprobiert)

Code: Alles auswählen

Could not obtain moderator status

DEBUG MODE

SQL Error : 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 ') AND aa.group_id = ug.group_id AND aa.auth_mod = 1

SELECT ug.user_id, COUNT(auth_mod) AS is_auth_mod FROM phpbb_auth_access aa, phpbb_user_group ug WHERE ug.user_id IN () AND aa.group_id = ug.group_id AND aa.auth_mod = 1 GROUP BY ug.user_id

Line : 556
File : admin_ug_auth.php
Benutzeravatar
Slytherin
Mitglied
Beiträge: 1771
Registriert: 11.03.2005 17:52
Wohnort: Hogwarts
Kontaktdaten:

Beitrag von Slytherin »

Meine obenstehenden Codeänderungen dienen nicht zur Lösung des Problems, das ist mir schon klar.
So werden die entsprechenden Zeilen nur erstmal wieder ans Original angepasst.
Nächste Fehlerbehebung (oder Weg dazu) liegt wohl in diesem Bereich.

Code: Alles auswählen

		$sql = 'SELECT user_id FROM ' . USER_GROUP_TABLE . "
			WHERE group_id = $group_id";
		$result = $db->sql_query($sql);

		$group_user = array();
		while ($row = $db->sql_fetchrow($result))
		{
			$group_user[$row['user_id']] = $row['user_id'];
		}
		$db->sql_freeresult($result);

		$sql = "SELECT ug.user_id, COUNT(auth_mod) AS is_auth_mod 
			FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug 
			WHERE ug.user_id IN (" . implode(', ', $group_user) . ") 
				AND aa.group_id = ug.group_id 
				AND aa.auth_mod = 1
			GROUP BY ug.user_id";
Slytherin
Benutzeravatar
Tobi91
Mitglied
Beiträge: 222
Registriert: 17.03.2006 17:58
Wohnort: Völklingen (Saarland)
Kontaktdaten:

Beitrag von Tobi91 »

so, hab jetzt beide änderungen durchgeführt und erhalte nun diese meldung:

--------------------------------------------------------------

Couldn't update private forum permissions

DEBUG MODE

SQL Error : 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 '', 1)' at line 2

INSERT INTO phpbb_auth_access (forum_id, group_id, auth_mod) VALUES (7, ', 1)

Line : 412
File : admin_ug_auth.php

--------------------------------------------------------------

Das rot markierte hat sich geändert.
Die Fehlermeldung besagt, dass der Wert für die group_id leer an die Datenbank übergeben wird und dies nicht sein darf.
Wie ändere ich das nun?

Tobi91
Benutzeravatar
Tobi91
Mitglied
Beiträge: 222
Registriert: 17.03.2006 17:58
Wohnort: Völklingen (Saarland)
Kontaktdaten:

Beitrag von Tobi91 »

öhhh. problem ist gelöst.
mir ist aufgefallen das der fehler nur auftaucht wenn man user die man über die datenbank hinzufügt einen mod status geben will.

:roll:

trotzdem danke an euch.
Antworten

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