admin_board.php und db
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.
admin_board.php und db
Wie ändere ich die Einstellung in admin_board.php.
Ich möchte Funktionen dort deaktivieren. In der Datei ist jedoch angemerkt das "jeder" Teil der phpbb_config geändert wird. Sobald also Einträge gelöscht werden wird der entsprechende Teil einfach in der db auf "nichts" gesetzt.
Dies ist natürlich nicht der Effekt den ich erreichen möchte.
Da dies ein sehr wichtiger Teil ist möchte ich keine Fehler machen. Es geht darum, daß lediglich die "Allgemeine Boardeinstellungen" unerwünscht sind. Wie erstelle ich nun eine Einzelabfrage für die entsprechenden Punkte?
Ich möchte Funktionen dort deaktivieren. In der Datei ist jedoch angemerkt das "jeder" Teil der phpbb_config geändert wird. Sobald also Einträge gelöscht werden wird der entsprechende Teil einfach in der db auf "nichts" gesetzt.
Dies ist natürlich nicht der Effekt den ich erreichen möchte.
Da dies ein sehr wichtiger Teil ist möchte ich keine Fehler machen. Es geht darum, daß lediglich die "Allgemeine Boardeinstellungen" unerwünscht sind. Wie erstelle ich nun eine Einzelabfrage für die entsprechenden Punkte?
Ich habe den Supermoderatorenhack eingebaut.
Den Supermoderatoren möchte ich nun die Mpglichkeit geben Einstellungen zu verändern. Er soll jedoch keinen Zugriff auf lebenswichtige Bereiche erhalten.
Die Jungs sind zwar zuverlässig aber ....
Da nun der gesamte Bereich ausgelesen wird und ebenso in die config insgesamt geschrieben wird stehe ich auf dem Schlauch. Da ich mit den db-Abfragen (noch) nicht so fit bin habe ich in diesem Bereich einige Bedenken.
Irgendwo hier werde ich die entscheidenden Änderungen vornehmen dürfen.
Ich benötige einen Hinweis wie ich die einzelnen Datensätze aus der db einlese und ebenso in die db schreibe.
Den Supermoderatoren möchte ich nun die Mpglichkeit geben Einstellungen zu verändern. Er soll jedoch keinen Zugriff auf lebenswichtige Bereiche erhalten.
Die Jungs sind zwar zuverlässig aber ....
Da nun der gesamte Bereich ausgelesen wird und ebenso in die config insgesamt geschrieben wird stehe ich auf dem Schlauch. Da ich mit den db-Abfragen (noch) nicht so fit bin habe ich in diesem Bereich einige Bedenken.
Code: Alles auswählen
//
// Pull all config data
//
$sql = "SELECT *
FROM " . CONFIG_TABLE;
if(!$result = $db->sql_query($sql))
{
message_die(CRITICAL_ERROR, "Could not query config information in admin_board", "", __LINE__, __FILE__, $sql);
}
else
{
while( $row = $db->sql_fetchrow($result) )
{
$config_name = $row['config_name'];
$config_value = $row['config_value'];
$default_config[$config_name] = $config_value;
$new[$config_name] = ( isset($HTTP_POST_VARS[$config_name]) ) ? $HTTP_POST_VARS[$config_name] : $default_config[$config_name];
if( isset($HTTP_POST_VARS['submit']) )
{
$sql = "UPDATE " . CONFIG_TABLE . " SET
config_value = '" . str_replace("\'", "''", $new[$config_name]) . "'
WHERE config_name = '$config_name'";
if( !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Failed to update general configuration for $config_name", "", __LINE__, __FILE__, $sql);
}
}
}
if( isset($HTTP_POST_VARS['submit']) )
{
$message = $lang['Config_updated'] . "<br /><br />" . sprintf($lang['Click_return_config'], "<a href=\"" . append_sid("admin_board.$phpEx") . "\">", "</a>") . "<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=right") . "\">", "</a>");
message_die(GENERAL_MESSAGE, $message);
}
}
Ich benötige einen Hinweis wie ich die einzelnen Datensätze aus der db einlese und ebenso in die db schreibe.
Beim Junior Hack kann ma zwar verschiedene Bereiche einstellen, die erlaubt sind für´n Junior Admin, aber ich bin mir ned so sicher, ob man innerhalb eines Bereiches (Konfiguration) auch noch ma selektieren kann.
Du könntest es über Deine user_id bzw. dem user_level machen und halt ´ne Abfrage einbauen, das nur Du alle Einstellungen siehst.
Oder Du kopierst die admin_board.php, benennst sie um, änderst die Beschriftung und löschst dann das was für die SuperTypen ned sichtbar sein soll.
@saerdnaer
...hattest gleich 3ma hintereinander gepostet.
Du könntest es über Deine user_id bzw. dem user_level machen und halt ´ne Abfrage einbauen, das nur Du alle Einstellungen siehst.
Oder Du kopierst die admin_board.php, benennst sie um, änderst die Beschriftung und löschst dann das was für die SuperTypen ned sichtbar sein soll.
@saerdnaer
...hattest gleich 3ma hintereinander gepostet.

Das mit dem Kopieren und löschen funktioniert leider nicht. Dabei zerschieße ich meine config. Wie bereits geschildert wird die Config eingelesen und danach einfach "entleert" (Die gelöschten Elemente) in die Datenbank eingetragen. (Oder der Herr muß Hirn werfen damit ich es richtig macheAcid hat geschrieben:Du könntest es über Deine user_id bzw. dem user_level machen und halt ´ne Abfrage einbauen, das nur Du alle Einstellungen siehst.
Oder Du kopierst die admin_board.php, benennst sie um, änderst die Beschriftung und löschst dann das was für die SuperTypen ned sichtbar sein soll.

Das obere werde ich mal versuchen.
also dann mach doch mal folgendes:
öffne die admin_board.php
suche:
davor einfügen
dann suche nochmal und füge danach ein:
sollte funktionieren
@acid: kann sein da das forum oder eher die db etwas verrückt gespielt hat...
ah
öffne die admin_board.php
suche:
Code: Alles auswählen
$file = basename(__FILE__);
Code: Alles auswählen
if ( $userdata['user_level'] != ADMIN )
{
return;
}
Code: Alles auswählen
include($phpbb_root_path . 'includes/functions_selects.'.$phpEx);
Code: Alles auswählen
if ( $userdata['user_level'] != ADMIN )
{
message_die(GENERAL_MESSAGE, 'Not_Authorised');
}
@acid: kann sein da das forum oder eher die db etwas verrückt gespielt hat...
ah
Genau das würde der Code auch nach meiner Meinung machen. Ich habe etwas rumgespielt und die einzelnen Bereiche jeweils gesperrt. Ich erhalte jetzt jeweils die Fehlermeldung das ich keinen Zugang habe (als Supermod.)
Also werden die Daten doch einzeln ausgelesen werden müssen und separat zurückgeschrieben.
Ich werde mich am Sonntag damit beschäftigen. Sollte ich irgendwo in ein tiefes Loch stürzen, so nehme ich mein Seil und rufe hier um Hilfe
Danke ersteinmal für die Mühe. - Sollte jedoch jemand....
Also werden die Daten doch einzeln ausgelesen werden müssen und separat zurückgeschrieben.
Ich werde mich am Sonntag damit beschäftigen. Sollte ich irgendwo in ein tiefes Loch stürzen, so nehme ich mein Seil und rufe hier um Hilfe

Danke ersteinmal für die Mühe. - Sollte jedoch jemand....