Make sure you reset $selected at the end of the while loop.

if HTML readability is a concern you can also do something like the 
following( for static lists I find it easier this way ):

<?php $priority_selected[$priority] = 'SELECTED'; ?>
<SELECT NAME="priority">
         <OPTION VALUE="000" <?php echo($priority_selected['000'])?>>Low
         <OPTION VALUE="050" <?php echo($priority_selected['050'])?>>Medium
         <OPTION VALUE="100" <?php echo($priority_selected['100'])?>>High
</SELECT>

morgan

At 05:30 PM 3/29/2001 -0800, Jason Lotito wrote:



> > -----Original Message-----
> > From: Ashley M. Kirchner [mailto:[EMAIL PROTECTED]]
> > Sent: Thursday, March 29, 2001 1:56 PM
> > To: PHP-General List
> > Subject: [PHP] Better way (if...elseif...else)
> >
> >
> >
> >     Is there a better way to write the following snippet:
> >
> >     if ($priority == "000") {
> >       $fcol="high";
> >       $pstr .= "<option value=\"000\" selected>High\n";
> >       $pstr .= "<option value=\"050\">Medium\n";
> >       $pstr .= "<option value=\"100\">Low\n";
> >     } elseif ($priority == "050") {
> >       $fcol="med";
> >       $pstr .= "<option value=\"000\">High\n";
> >       $pstr .= "<option value=\"050\" selected>Medium\n";
> >       $pstr .= "<option value=\"100\">Low\n";
> >     } else {
> >       $fcol="low";
> >       $pstr .= "<option value=\"000\">High\n";
> >       $pstr .= "<option value=\"050\">Medium\n";
> >       $pstr .= "<option value=\"100\" selected>Low\n";
> >     }
> >
> >     I just hate having to repeat pieces of code.  This piece here just
> > generates a drop down list of items, with the current one being the
> > selected one.
>
>
>$val = array("000","050","100");
>$val_name = array("Low","Medium","High");
>$count = count($val);
>$counter = 0;
>while ($counter < $count)
>{
>         if ($val[$counter] == $priority)
>         {
>                 $selected = " selected";
>         }
>         echo "<option
>value=\"$val[$counter]\"$selected>$val_name[$counter]</option>";
>         $counter++;
>}
>
>
>--
>PHP General Mailing List (http://www.php.net/)
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to