Seite 1 von 1

[gelöst] Datenbankeintrag abrufen

Verfasst: 28.04.2006 18:51
von Amaya
Hoffe ich hab jetzt das richtige Forum rausgepickt und ihr lacht euch nicht gleich tot wenn ihr das lest, aber ich lerne noch :oops:

Also folgendes, ich mache gerade meine Foren neu und möchte mir bei der Gelegenheit einen kleinen Zusatz einbauen, aber auf halber Strecke versage ich.

Ich hab als erstes eine neue Tabelle in der Datenbank angelegt mit Namen phpbb_box darin befinden sich zwei Felder box_name und box_value darin liegt nun der Eintrag feld_eins, soweit so gut.

Im ACP hab ich es hinbekommen, dass ich nun den Inhalt von feld_eins dort ändern kann, diesen aber jetzt in der overall_header.tpl abzurufen will nicht wirklich gehen.

Nun möchte ich, dass der Inhalt im Header auftaucht, wenn ich {FELD_1} in die tpl Datei schreibe, doch sämtliche Versuche das Abrufen in der page_header richtig zu definieren sind gescheitert, es wurde zwar schonmal angezeigt, aber dann kamen Fehler beim einloggen und jetzt weiß ich gerade nicht mehr wirklich vor noch zurück.

Wäre nett wenn sich jemand erbarmen würde und mir nen Schubs in die richtige Richtung gibt.

Danke schonmal.

Verfasst: 28.04.2006 19:36
von S2B
Teste mal sowas:

Code: Alles auswählen

$sql = 'SELECT * FROM ' . BOXEN_KONSTANTE;
if (!$result = $db->sql_query($sql))
{
	message_die(GENERAL_ERROR, 'Could not get box info', '', __LINE__, __FILE__, $sql);
}
$boxes = array();
while ($row = $db->sql_fetchrow($result))
{
	$boxes[$row['box_name']] = $row['box_value'];
}
$db->sql_freeresult($result);

// ...

$template->assign_vars(array(
// ...
	'FELD_1' => $boxes['feld_eins'],
// ...
);

Verfasst: 28.04.2006 19:48
von Amaya
Gar nicht so unähnlich war mein erster Versuch, aber mit der Version jetzt bekomme ich einen Fehler
Parse error: parse error, unexpected ';' in /forum/includes/page_header.php on line 711
Gibt es irgendwas, dass ich wegen der Platzierung beachten sollte? Hab es jetzt ziemlich ans Ende gehauen vor $template->pparse('overall_header');

Edit: Den Fehler hab ich wegbekommen, am Ende noch ein ) vor das ; eingefügt. Daraufhin kommt jedoch folgende schöne Meldung:
Allgemeiner Fehler

Could not get box info

DEBUG MODE

SQL Error : 1146 Table 'db110442_9.BOX_TABLE' doesn't exist

SELECT * FROM BOX_TABLE

Line : 627
File : page_header.php
Wenn ich nun vor deinen Code noch

Code: Alles auswählen

define('BOX_TABLE', $table_prefix.'box');
setzte funktioniert es tadellos bis zu dem Punkt wenn man sich einloggen will, also wie ich es schonmal hatte.

Edit zum zweiten: Es tut manchmal so weh, man sollte natürlich auch an die constants.php denken dann klappt das auch mit der Datenbankabfrage. Danke für die Hilfe, es geht jetzt.