Selectbox mit OptionGroup (Optgroup)

edit | delete

Autor: Ralf v.d.Mark

eingetragen: Freitag, 10. September 2010 um 15:45 Uhr (36/2010 Kalenderwoche)

geändert: Dienstag, 23. März 2021 um 12:31 Uhr (12/2021 Kalenderwoche)

Keywords: selectbox auswahl Optgroup checker selectierer

Kategorien: HTML, PHP,

Text:

Füllen der Selectbox und Trennen der Werte mit Optgroup.
Selected mit spezieller Funktion.


s. a. Techdox-Artikel 36

Quellcode:  

<select name="einrichtg_id">
    <optgroup label="Einrichtungen">
        <option value="0">Bitte auswählen</option>
<?php
while($queryAusgb = mysql_fetch_assoc($result_einrtg)){
    if (empty($labelSorte) 
     || $labelSorte != $queryAusgb['einrichtg_sorte']) {
        echo '
            </optgroup>
            <optgroup label="'.$queryAusgb['einrichtg_sorte_titel'].'">';
    }
    echo '<option value="'.$queryAusgb['einrichtg_id'].'"'
        .formMarkierer($_POST['einrichtg_id'], $queryAusgb['einrichtg_id'])
        .'>'.$queryAusgb['einrichtg_name']
            .' ('.$queryAusgb['einrichtg_akronym'].')</option>';
    $labelSorte = $queryAusgb['einrichtg_sorte'];
}//ENDE: while($... = mysql_fetch_assoc($...))
?>
    </optgroup>
</select>
<?php
/**
 * Checkt oder selected ein Formularfeld
 *
 * @param string $aktWert (aktueller Wert)
 * @param string $loopWert (Wert pro Eintrag aus Loop)
 * @param string $ausgabe (Was soll ausgegeben werden, wenn ...)
 * @param string $alternativ (Was soll ausgegeben werden, wenn nicht ...)
 */
function formMarkierer($aktWert, $loopWert, $ausgabe = ' selected', $alternativ = NULL)
{
    if ($loopWert == $aktWert) {
        return $ausgabe;
    } else {
        return $alternativ;
    }
}//ENDE: function formMarkierer()