Kategorie editieren

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
aLFie
Mitglied
Beiträge: 2
Registriert: 10.05.2006 23:38

Kategorie editieren

Beitrag von aLFie »

So wie ich es im Code gesehen habe, lässt das Script ein editieren der Kategorie auch zu, wenn das POST-Array leer ist!


Datei: /phpbb/admin/admin_forums.php

Code: Alles auswählen

		case 'modcat':
			// Modify a category in the DB
			$sql = "UPDATE " . CATEGORIES_TABLE . "
				SET cat_title = '" . str_replace("\'", "''", $HTTP_POST_VARS['cat_title']) . "'
				WHERE cat_id = " . intval($HTTP_POST_VARS[POST_CAT_URL]);
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, "Couldn't update forum information", "", __LINE__, __FILE__, $sql);
			}

			$message = $lang['Forums_updated'] . "<br /><br />" . sprintf($lang['Click_return_forumadmin'], "<a href=\"" . append_sid("admin_forums.$phpEx") . "\">", "</a>") . "<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=right") . "\">", "</a>");

			message_die(GENERAL_MESSAGE, $message);

			break;
geändert in

Code: Alles auswählen

		case 'modcat':
			// Modify a category in the DB
			if( trim($HTTP_POST_VARS['cat_title']) == '')
			{
				message_die(GENERAL_ERROR, "Can't edit a category without a name");
			}
			
			$sql = "UPDATE " . CATEGORIES_TABLE . "
				SET cat_title = '" . str_replace("\'", "''", $HTTP_POST_VARS['cat_title']) . "'
				WHERE cat_id = " . intval($HTTP_POST_VARS[POST_CAT_URL]);
			if( !$result = $db->sql_query($sql) )
			{
				message_die(GENERAL_ERROR, "Couldn't update forum information", "", __LINE__, __FILE__, $sql);
			}

			$message = $lang['Forums_updated'] . "<br /><br />" . sprintf($lang['Click_return_forumadmin'], "<a href=\"" . append_sid("admin_forums.$phpEx") . "\">", "</a>") . "<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=right") . "\">", "</a>");

			message_die(GENERAL_MESSAGE, $message);

			break;
LG aLFie
Benutzeravatar
cYbercOsmOnauT
Ehemaliges Teammitglied
Beiträge: 3820
Registriert: 18.02.2004 23:02
Wohnort: Göttingen
Kontaktdaten:

Beitrag von cYbercOsmOnauT »

So ganz verstehe ich das nicht. Wichtig ist doch nicht der Titel der Kategorie, sondern seine ID. Wer gerne Kategorien ohne Titel hat (welchen Sinn auch immer das haben sollte), kann es nutzen.

Sollte die cat_id nicht mit übermittelt werden, kommt es bei der SQL sowieso zu einer Fehlermeldung.

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
aLFie
Mitglied
Beiträge: 2
Registriert: 10.05.2006 23:38

Beitrag von aLFie »

Nunja, ich hab das eher in dem Zusammenhang gesehen, das es selbst bei Kategorieerstellung gefordert wird einen Kategorienamen anzugeben!
Hat sich mit der editierung widersprochen, weil da egal ist, ob ein Name angegeben wurde oder nicht! Mit der ID das ist klar das sich sql da meldet!

Entweder steht es von Anfang an zur Verfügung eine Kategorie ohne Namen zu erstellen oder nicht! Halbe Sachen auf doppeltem Weg zu erschaffen fällt unter meine ethischen Grundsätze der Programmierung eines Scriptes! :P

LG
Antworten

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