Forum Moderators: coopster
<select name="options">
<option value=$option1 SELECTED>option1</option>
<option value=$option2 SELECTED>option2</option>
<option value=$option3 SELECTED>option3</option>
</select>
I even tried a code posted by Hakre back in 2005,but it gave me a parse error:
Parse error: parse error, unexpected T_STRING, expecting ')' in ...
Hakre's way:
<form action="mypage.php">
<select name="selbox" size="1">
<option value="">Select one</option>
<? foreach(array(1,2,3,4) AS $value) {?>
<option value="<?=$value?>"<?=($selbox==$value)?' selected="selected"':''?>><?=$value?></option>
<? }?>
</select>
</form>
My sincere gratitude in advance!
I have developed a small piece of code for redisplaying the submitted values of a select list. If you want to use multiple select values to be displayed then you have to use nested loop. (As far as I think. Can anyone have a better idea?)
My code is as follows:
<form name="f1" action="thispage.php" method="post">
<?php
if(!isset($_POST['submit']))
{
?>
<select name="options" size="5">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
<?php
}
else
{
?>
<select name="options" multiple size="5">
<?php
for($value=1;$value<=10;$value++)
{
if($_POST['options']==$value)
{
echo("<option value=".$value." selected>".$value."</option>");
}
else
{
echo("<option value=".$value.">".$value."</option>");
}
}
?>
</select>
<?php
}
?>
<br/>
<input type="submit" value="Submit Form" name="submit">
</form>