Mehrdimensionale Arrays via ADODB in Verbindung mit Smarty (Problem mit html_options)

Crypto

Grünschnabel
Hallo,

Ich verwende momentan die ADODB-Module auf dem Webserver und würde den Code ein wenig optimieren, jedoch hänge ich dabei ein wenig fest :(

Ich will Daten aus einer Datenbank laden ('id' & 'daten') und die Werte in eine Select-Box einfügen.

Dazu verwende ich die Smarty Template-Engine.

Der Code der Select-Box sieht folgendermassen aus:

Die Select-Box:
Code:
<select name="daten">
{html_options values=$daten_values selected=$daten_selected output=$daten_output}
</select>


Aktuell sieht der Programmcode so aus und er funktioniert auch soweit ...
Code:
...
$sql = "SELECT * FROM xzy";
$recordSet = $DB->Execute($sql);
$DB->SetFetchMode(ADODB_FETCH_ASSOC);

$did    = array();
$daten  = array();

while (!$recordSet->EOF) {
  $did[]        = $recordSet->fields['id'];
  $daten[]    = $recordSet->fields['daten'];
  adodb_movenext($recordSet);
}

$smarty->assign("daten_values",     $did);
$smarty->assign("daten_output",     $daten);
$smarty->assign("daten_selected",   $_POST['daten_id']);
$smarty->display('daten.html');
...




Jedoch würde ich das gerne aus so lösen:
Code:
...
$sql = "SELECT * FROM xzy";
$recordSet = $DB->Execute($sql);
$DB->SetFetchMode(ADODB_FETCH_ASSOC);

$array = adodb_getall($recordSet);

$smarty->assign("daten_values",    $array[]['id']); <-- sicherlich falsch
$smarty->assign("daten_output",    $array[]['daten']); <-- sicherlich falsch
$smarty->assign("daten_selected",  $_POST['daten_id']);
$smarty->display('daten.html');
...

Das Problem ist, dass das Array nun 2-dimensional ist und ich die Daten nicht in die Select-Box bekomme ... habt Ihr eventuell eine Idee?
 
Zuletzt bearbeitet:
Zurück