Hi,
function get_setting ($variable)
{
$result = mysql_query("SELECT setting FROM school_config WHERE variable = $variable");
}
$title = get_setting ($variable="title");
$banner = get_setting ($variable="banner");
$undertitle = get_setting ($variable="undertitle");
$tpl = get_setting ($variable="tpl");
Dieses Script sollte eigentlich immer das zur Variable gehörende Feld SETTING auslesen und dann die Variable definieren. Aber irgendwie funktioniert das nicht ... was mache ich falsch?
So einiges ;)
Um Dein Script zu berichtigen:
function get_setting ($variable)
{
$result = mysql_query("SELECT setting FROM school_config WHERE variable = $variable");
$setting = mysql_fetch_array($result);
return $setting[$variable];
}
$title = get_setting ("title");
$banner = get_setting ("banner");
$undertitle = get_setting ("undertitle");
$tpl = get_setting ("tpl");
ABER: So macht man das nicht [tm] ;)
Versuch es mit einer Query, das ist etwas resourcensparender:
$result = mysql_query('
SELECT setting, variable
FROM school_config
WHERE
variable = "title" OR
variable = "banner" OR
variable = "undertitle" OR # das heisst subtitle ;)
variable = "tpl"');
while($fields = mysql_fetch_array($result)) {
switch($fields['variable']) {
case 'title':
$title = $fields['setting'];
break;
case 'banner':
$banner = $fields['banner'];
break;
case 'undertitle':
$undertitle = $fields['undertitle'];
break;
case 'tpl':
$tpl = $fields['tpl'];
break;
}
}
Ich wuerde das ganze auch nochmal ueberdenken, mir entgeht bisher der Sinn des ganzen.
Jan
--
P.S.: DISCLAIMER: Alles aus hohler Hand und ungetestet.