Mailinglisten-Archive |
Hallo liebe Liste, wie kann ich nachfolgende dynamische Struktur zum Füllen eines select- feldes aus einer db mit den templates Funktionen der phpLib realisieren? <Code> require("db_mysql.inc.php"); require("local.inc.php"); $db = new DB_WAHL; $query = "SELECT auswahl_id,auswahl_01 FROM auswahl"; $query .= " ORDER BY auswahl_id;"; $db->query($query); // mit einer Schleife die select-box aus der Datenbank füllen while ($db->next_record()) { //aktueller Wert der Spalte 'auswahl_id' $wert = $db->f('auswahl_id'); //aktueller Wert der Spalte 'auswahl_id' $wert_01 = $db->f('auswahl_01'); if($wert == $SEL_FELD) { $option_block .= "<option value=" .$wert." selected >".$wert_01."</option>"; }else{ $option_block .= "<option value=" .$wert.">".$wert_01."</option>"; } } <Code> im html wird obenstehendes über <select name ..........> <? echo "$option_block"; ?> </select> aufgerufen. Funktioniert auch prächtig. Nun möchte ich das gleiche mit den templates der phpLib umsetzen. Mein bisheriger Versuch: <Code> require("db_mysql.inc.php"); require("local.inc.php"); require ("template.inc.php"); $db = new DB_WAHL; $tpl = new Template(); $tpl-> set_file (array( "hauptseite" => "kopf.html", "feld" => "kopf.html")); $tpl-> set_var ("seitentitel","music-database"); $tpl->parse("out", "hauptseite"); $query = "SELECT auswahl_id,auswahl_01 FROM auswahl"; $query .= " ORDER BY auswahl_id;"; $db->query($query); while ($db->next_record()) { $tpl->set_var(array( "wert" => $db->f('auswahl_id'), "wert_01" =>$db->f('auswahl_01'))); } $tpl-> parse ("output", array("feld")); $tpl-> p ("output"); <Code> in der html werden folgende Platzhalter definiert: <option value="{wert}" selected >{wert_01}</option> In der Ausgabe bekomme ich ich ein select-Feld, wo das letzte Element selected ist. Wie bekomme ich die obrigen Variablen($wert, $wert_01) in diese Platzhalter-Struktur? Bin völlig verzweifelt und außerdem sehr müde ... Frank
php::bar PHP Wiki - Listenarchive