我有以下代码正确运行查询但不保留选定的选项。我可以得到类似的答案,但没有使用此代码。这里选择的选项是用户给定和休息的组合来自mysql列。 我是php新手,所以任何帮助都将不胜感激。
<select name="tester">
<option value=""> -----------ALL----------- </option>
<?php
$dd_res=mysqli_query($conn, "Select DISTINCT tester from workflow1");
while($r=mysqli_fetch_row($dd_res))
{
echo "<option value='$r[0]'> $r[0] </option>";
}
?>
</select>
<input type="submit" name="find" value="find"/>
答案 0 :(得分:0)
您可以使用$_POST
超全局数组来检查提交的表单字段的值。在这种情况下,$_POST['tester']
包含提交表单后的选择字段的值。
echo "<option value='$r[0]'".($_POST['tester']==$r[0]?' selected':'')."> $r[0] </option>";
答案 1 :(得分:0)
我在想你要求选择传递给表单的值?如果我在这方面是正确的,你会做类似的事情:
$selVal = $_REQUEST['tester'];
$val = $r[0];
echo '<option value="'.$val.'"';
if ($val == $selVal) {
echo ' selected="selected"';
}
echo '>'.$val.'</option>';
$ _REQUEST获取任何POST,GET或COOKIE值,并且应该进行验证以确保没有黑客尝试或任何事情。获得该值后,只需添加所选属性(如果它与列表中的值匹配)。