Monate ausgeben

tca

Grünschnabel
Hallo,

aus meiner mySQL DB erhalte ich ein date (für Geburtstag), dass ich mit explode zerlege und dann in einem Formular zur Verfügung stelle. Ob das jetzt die beste Lösung ist weiss ich nicht, aber es :)

Nun habe ich für Monat eine Zahl als Ausgabe (also z.B. 12 = Dezember) - das würde ich auch gerne so ausgeben, deswegen habe ich folgendes versucht:

PHP:
<? 
 // $gebmon ist explode aus date für MONAT
 $monat="1"; while ($monat < "13"){
  if ($gebmon==$monat){
  echo '<OPTION value='.$monat.' SELECTED>'; 
  }else{
   echo '<OPTION value='.$monat.'>';
  }
 echo strftime("%B",$monat).'</OPTION>'; 
 $monat++;
 }
?>

Problem habe ich mit dieser Zeile:

PHP:
echo strftime("%B",$monat).'</OPTION>';

Das Ergebnis ist 12 mal "Januar" - wenn ich hingegen:

PHP:
echo $monat.'</OPTION>';

mache, dann kann PHP auch von 1-12 zählen ... :confused:

Mach ich was "verbotenes"?
Danke und Grüsse
 
Die strftime()-Funktion erwartet als zweiten Parameter einen gültigen Unix-Zeitstempel.
probier mal Folgendes:
PHP:
<?php

	for( $i=1; $i<=12; $i++ ) {
		echo sprintf(
			'<option value="%s"%s>%s</option>',
				$i,
				$gebmon==$i ? ' selected="selected"' : '',
				strftime('%B', 60 * 60 * 24 * 30.5 * $i)
		);
	}

?>
 
Zurück