Seite 1 von 1

Where in Forumlist Abfrage

Verfasst: 14.04.2008 18:08
von Sanchez17
Hola,


für ein bestimmtes Projekt würde ich gerne die Forumliste im ACP (phpBB3) ein wneig abändern. In normalen phpBB werden ja alle Foren bzw Kategorien aufgelistet.
Ich würde gerne dort eine Where Abfrage noch einbauen, so dass nicht alle sondern nur die der Where entsprechenden Foren aufgelistet werden.

Doch leider waren alle versuche erfolglos.
Ich konnte bis jetzt nur die Jumpboxen abändern, leider aber nicht die Forumliste.

Ich vermute, das

function get_forum_list()

in der

includes/function_admin.php

für die Forumliste verantwortlich ist. Deswegen habe ich folgendes in der Datei:

Code: Alles auswählen

		$sql = 'SELECT forum_id, forum_name, parent_id, forum_type, left_id, right_id
			FROM ' . FORUMS_TABLE . ' 
			ORDER BY left_id ASC';
		$result = $db->sql_query($sql, $expire_time);
in

Code: Alles auswählen

		$sql = 'SELECT forum_id, forum_name, parent_id, forum_type, left_id, right_id
			FROM ' . FORUMS_TABLE . ' WHERE foo LIKE "blubb"
			ORDER BY left_id ASC';
		$result = $db->sql_query($sql, $expire_time);
abgeändert. Doch die Forumliste zeigt wie gewohnt alle Foren. Bei dieser Abfrage dürfte allerdings es mehrere Foren gar nicht angezeigt werden.

Ist eventuell doch eine andere function für die Forumliste verantwortlich? Oder hat jmd ne Idee wieso das oben genannte komischerweise nicht funktioniert?

Gruß,
Miguel

Verfasst: 14.04.2008 22:46
von gn#36
Meine erste Vermutung bei sowas ist eigentlich immer der Cache... Fast immer wenn irgendwas keine Auswirkungen hat ist der schuld :)

Ansonsten würde ich behaupten, dass dieser Teil in der Nähe der Zeile 780 für die Forenauswahl verantwortlich ist:

Code: Alles auswählen

$sql = 'SELECT *
			FROM ' . FORUMS_TABLE . "
			WHERE parent_id = $this->parent_id
			ORDER BY left_id";
Ist allerdings ungeprüft, da ich gerade nicht die Zeit habe mich tiefer in die Datei einzulesen.

Verfasst: 14.04.2008 22:58
von Sanchez17
Wie sagt mein VWL Lehrer immer so schön...: I love you :D

Danke, genau die Stelle war es. :wink: