mechow: DB Einträge beim Auslesen Optgroup zuweisen

Beitrag lesen

Hi,

<select class="select_mac" name="ort" id="ort" >
<optgroup label="Ort">
<?php

$sql = "SELECT ort FROM dropdown_ort ";
        $result = mysql_query($sql);
           // für jeden Eintrag ein Option-Tag erstellen
        while ($arrort = mysql_fetch_array($result, MYSQL_ASSOC)) {

foreach ($arrort as $zeile) {
              $sel = isselected($zeile, $_POST['ort']);

//optgroup
              if($arrort['ort'] == "") {
                echo '<optgroup label="
">';
              } else {

echo '<option value="'.$zeile.'"'.$sel .'>'.$zeile.'</option>';
              }
              }
            }
?>
</optgroup>
</select>

besser wäre es, wenn du den durch PHP generierten HTML-Output in einer Variable sammeln und dann ausgeben würdest, statt jeweils mit echo zu arbeiten.
Zb. in einem Array (verkürzt und simplifiziert):

$output = array();
$output[] = '<option value="'.$zeile.'"'.$sel .'>'.$zeile.'</option>';
$output[] = '</optgroup>';
$output = implode("", $output);