当我从数据库表中选择下拉值然后刷新页面时,该值返回到选择选项
这是我的代码:
<select name="customers" id="customers" style="width:150px;" >
<option value=""><--Select--></option>
<?php
$query=mysql_query("SELECT cn FROM customerinformation order by id");
while($row=mysql_fetch_assoc($query))
{
$val2=$row['cn'];
?>
<option value="<?=$val2;?>"
<?if ($_REQUEST['cn'] == $val2){ echo "selected='selected'"; }?>>
<?=$row['cn'];?>
</option>
<?php }?>
</select>
请告诉我或指导我在哪里做错了。提前谢谢!
答案 0 :(得分:1)
我不明白你的问题,但我认为你应该把$ _REQUEST ['customers']而不是$ _REQUEST ['cn'](因为你的选择的名字) 例如:
<select name="customers" id="customers" style="width:150px;" >
<option value=""><--Select--></option>
<?php
$query=mysql_query("SELECT cn FROM customerinformation order by id");
while($row=mysql_fetch_assoc($query)) {
$selected = ($_REQUEST['customers'== $row['cn']?'selected="selected"':'');
echo '<option value="'.$row['cn'].'" $selected>'.$row['cn'].'</option>';
}
?>
</select>
答案 1 :(得分:0)
一旦用于评估,您需要unset()
$_REQUEST['cn']
中的值
<? if ($_REQUEST['cn'] == $val2) {
echo "selected='selected'";
unset($_REQUEST['cn']);
}?> > <?=$row['cn'];?> </option>