Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中保持选中选项_Php_Mysql - Fatal编程技术网

在php中保持选中选项

在php中保持选中选项,php,mysql,Php,Mysql,我有下面的代码,可以正确运行查询,但不保留选中的选项。我可以得到类似的答案,但不使用此代码。这里选择选项是用户给定的组合,其余选项来自mysql列。 我是新来的php,所以任何帮助将不胜感激 <select name="tester"> <option value=""> -----------ALL----------- </option> <?php $dd_res=mysqli_query($conn, "Select DISTINCT t

我有下面的代码,可以正确运行查询,但不保留选中的选项。我可以得到类似的答案,但不使用此代码。这里选择选项是用户给定的组合,其余选项来自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"/> 
您可以使用$\u POST superglobal数组检查已提交表单字段的值。在本例中,$\u POST['tester']包含提交表单后选择字段的值

echo "<option value='$r[0]'".($_POST['tester']==$r[0]?' selected':'')."> $r[0] </option>";

我认为您要求选择传递到表单中的值?如果我说的没错,你可以这样做:

$selVal = $_REQUEST['tester'];
$val = $r[0];
echo '<option value="'.$val.'"';
if ($val == $selVal) {
  echo ' selected="selected"';
}
echo '>'.$val.'</option>';
$\u请求获取任何POST、GET或COOKIE值,并应进行验证,以确保没有黑客企图或任何东西。获得值后,只要添加与列表中的值匹配的选定属性即可