Dropdown mit Monats-Select

maga147

Erfahrenes Mitglied
Hi,

ich bin grade dabei mir nen Kalender zu basteln. Ich möcht jetzt ein Dropdown menü haben, dass immer den aktuellen Monat "selected" also sowas:

HTML:
      <select name="Monat">
		<option value="01">&nbsp;&nbsp;Januar</option>
		<option value="02">&nbsp;&nbsp;Februar</option>
		<option value="03">&nbsp;&nbsp;März</option>
		<option value="04">&nbsp;&nbsp;April</option>

		<option value="05">&nbsp;&nbsp;Mai</option>
		<option value="06">&nbsp;&nbsp;Juni</option>
		<option value="07">&nbsp;&nbsp;Juli</option>
		<option value="08" selected="selected">&nbsp;&nbsp;August</option>
		<option value="09">&nbsp;&nbsp;September</option>
		<option value="10">&nbsp;&nbsp;Oktober</option>

		<option value="11">&nbsp;&nbsp;November</option>
		<option value="12">&nbsp;&nbsp;Dezember</option>
		
      </select>

Leider hab ich grad überhaupt keinen Schimmer, wie ich das lösen könnte, dass wenn der monat August eben da is, das auch selected wird..... Irgendwie muss doch da IF schleife und FOR schleife miteinander funktionieren, aber ich bekomm die for() schon nicht hin ^^

Wär klasse wenn mir da jemand helfen könnte!!

Danke und Grüße
maga
 
Hallo,
so vielleicht:
PHP:
      <select name="Monat">
        <option value="01"<?php echo (date('m') == '01') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;Januar</option>
        <option value="02"<?php echo (date('m') == '02') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;Februar</option>
        <option value="03"<?php echo (date('m') == '03') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;März</option>
        <option value="04"<?php echo (date('m') == '04') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;April</option>
        <option value="05"<?php echo (date('m') == '05') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;Mai</option>
        <option value="06"<?php echo (date('m') == '06') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;Juni</option>
        <option value="07"<?php echo (date('m') == '07') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;Juli</option>
        <option value="08"<?php echo (date('m') == '08') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;August</option>
        <option value="09"<?php echo (date('m') == '09') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;September</option>
        <option value="10"<?php echo (date('m') == '10') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;Oktober</option>
        <option value="11"<?php echo (date('m') == '11') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;November</option>
        <option value="12"<?php echo (date('m') == '12') ? ' selected="selected"' : ''; ?>>&nbsp;&nbsp;Dezember</option>
      </select>

mfg
forsterm
 
Das geht auch schöner:
PHP:
$monatsnamen = array('Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember');
echo '<select name="monat">';
foreach( $monatsnamen as $key => $value ) {
	echo sprintf('<option value="%02d"%s>%s</option>',
		$key+1,
		date('n') == $key+1 ? ' selected="selected"' : '',
		$value
	);
}
echo '</select>';
 
Also ich würde es so machen
PHP:
<?php
	$AktuellerMonat = date("n");
	$i = 0;	
	while($i <= $AktuellerMonat) {
		if($i == $AktuellerMonat) {
			$Selected[$i] = 'selected="selected"';
		}
		$i++;
	} 

		
?>
	 
      <select name="Monat">
		<option value="01" <?php echo($Selected[1]);?>>Januar</option>
		<option value="02" <?php echo($Selected[2]);?>>Februar</option>
		<option value="03" <?php echo($Selected[3]);?>>März</option>
		<option value="04" <?php echo($Selected[4]);?>>April</option>
		<option value="05" <?php echo($Selected[5]);?>>Mai</option>
		<option value="06" <?php echo($Selected[6]);?>>Juni</option>
		<option value="07" <?php echo($Selected[7]);?>>Juli</option>
		<option value="08" <?php echo($Selected[8]);?>>August</option>
		<option value="09" <?php echo($Selected[9]);?>>September</option>
		<option value="10" <?php echo($Selected[10]);?>>Oktober</option>
		<option value="11" <?php echo($Selected[11]);?>>November</option>
		<option value="12" <?php echo($Selected[12]);?>>Dezember</option>		
      </select>
 
Hallo!

PHP:
<?php
setlocale(LC_TIME, "de_DE@euro", "de_DE", "de", "ge");
 
echo '<select name="monat">'."\n";
for($i=1; $i<=12; $i++) {
     echo ' <option value="'.($i<10?'0'.$i:$i).'"'.($i==date("n")?' selected="selected"':'').'>&nbsp;&nbsp;'.strftime("%B", mktime(0, 0, 0, $i, date("j"), date("Y"))).'</option>'."\n";
}
echo '</select>';
?>
Viele Wege führen halt nach Rom. ;)

Gruss Dr Dau
 
Am verständlichsten dürfte wohl die Variante von forsterm sein.
Aber schön ist etwas nur im Auge des Betrachters. ;)
 
Dr Dau hat gesagt.:
Am verständlichsten dürfte wohl die Variante von forsterm sein.
Aber schön ist etwas nur im Auge des Betrachters. ;)

darfst dich geehrt fühlen, hab deinen genommen ;) ;) :D

Und jetzt mach ich das ganze auch auf erledigt ;) (Hab ich vorhin vergessen)
 
Zurück