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

Beitrag lesen

Hi,

Im Falle einer select-Box bedeutet das, dass der Option-Tag die Option 'selected' benötigt, falls bereits ein Wert gesetzt war. Wenn Dir etwas elegentares einfällt, also dazu im Tag die if-Schleife zu setzen, lass es mich bitte wissen, damit ich meinen Stil auch verbessern kann und nicht nur weiss, dass er 'miserabel' und 'grottig' ist. Hier nochmal das entsprechende Code Schnippsel:

<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>

  
  
~~~php
<select name="from_day">  
<?php  
  $selected = [link:http://www.php.net/manual/de/language.operators.comparison.php@title=($_REQUEST['from_day'\]=='0') ? ' selected' : ''];  
  echo '<option'.$selected.' value="0">--</option>';  
  
  for ($i=1; $i<=31; $i++) {  
    $selected = ($_REQUEST['from_day']==$i) ? ' selected' : '';  
    echo '<option'.$selected.' value="'.$i.'">'.$i.'</option>';  
  }  
?>  
</select>

MfG ChrisB