Hello,
Da war was verloren gegangen...
Um die Selectbox also zu erzeugen, benötigst du mindestens vier Angaben:
in meinem Beispiel kommt ein Array mit den CSS-Klassennamen dazu, das man
vorher noch füttern muss...$_options[1] = 'Hotel';
$_options[2] = 'Gasthof';
$_options[3] = 'Pension';
$_options[4] = 'Ferienwohnung';
$_options[5] = 'Ferienzimmer';
$_options[6] = 'Schlafsaal';
$_options[7] = 'Wohnwagen';
$_options[8] = 'Zelt';if (isset($_POST['unterkunft']) and is_array($_POST['unterkunft']))
{
$_selection = $_POST['unterkunft'];
}
else
{
$_selection[] = 1;
}$_classes['select'] = 'sel_unterkunft';
$_classes['option'] = 'opt_unterkunft';$select = make_selectbox('unterkunft','M',$_options,$_selection,$_classes);
Die Klassen müssen natürlich im CSS definiert sein:
#------------------------------------------------------------------------------
function make_selectbox
#------------------------------------------------------------------------------
(
$name, # Name der Selectbox ohne []
$type, # S für sinlge, M für Multiple
$_options, # assoziatives Array mit den möglichen Optionen
$_selection=array(), # indiziertes Array mit den letzten Post-Werten (Value=" ")
$_classes=array() # Array mit den Klassendefinitionen, die eingebunden werden
)
{
if (strtolower($type)=='s' and count($_selection) > 0)
{
reset($_selection);
$_selection = each($_selection);
}
$select = "\n<select name="".trim($name).'[]"'.
((!empty($_classes['select']))?' class="'.$_classes['select'].'"':'').
((strtolower($type)=='m')?' multiple':'').">\n";
foreach($_options as $key => $val)
{
$select.=' <option'.(!empty($_classes['option'])?' class="'.$_classes['option'].'"':'')."\n".
" value="$key"".(in_array($key,$_selection)?' selected="selected"':'').'>'.
htmlentities($val)."</option>\n";
}
$select .= "</select>\n";
return $select;
}
<style type="text/css">
<!--
.sel_unterkunft
{
font-family:Century Gothic,Helvetica,Arial,sans-serif;
font-size:12pt;
width:200px;
height:10em;
}-->
</style>Und dann brauchst Du $select später nur noch im HTML-Teil auszugeben, so wie du das ja jetzt auch schon machst.
Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.deTom
Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau