David: interner zähler addiert für $i++ zwei?

Beitrag lesen

Hallo liebe Forum-Leser,

für ein Kundenformular programmiere ich gerade eine Vakanzabfrage mit Datumsfeldern im Stil eines Affenformulars, damit Eingaben nicht verloren gehen. Die Zeitdaten werden select-Boxen angezeigt und um Schreibarbeit zu sparen natürlich mit for Schleife. Hier der Code-Snippet

  
print "<select name=\"from_day\">  
 <option ";  
  
if ($_REQUEST["from_day"]=="0") print " selected ";  
print "value=\"0\">--</option><option ";  
  
for ($i=1; $i<=31; $i++)  
 {  
 if ($_REQUEST["from_day"]==$i) print " selected ";  
  print "value=\"" . $i . ">" . $i ."</option>";  
  if ($i<=30) print "<option ";  
 }  
print "</select>";  

Ich erwarte eine select-Box mit Werten von 0 (als -- dargestellt) bis 31, wobei im Falle der vorherigen Absendung der bereits gewählte Wert vorselektiert ist.

Ich bekomme eine select box mit Werten von 0 bis 31 mit jeweils 2er Sprung, also 1, 3, 5, 7, 9, 11 usw.

Leider sehe ich gerade den Fehler vor lauter Tomaten auf den Augen nicht mehr. Wäre sehr freundlich, wenn sich ein frischerer Geist als meiner die paar Zeilen gerade zu Gemüte führt. Herzlichen Dank!

Viele Grüße David