[英]How to declare a selected option in select statement with a dynamic input from database?
我正在为一个小软件工具开发输入掩码。 因此,我有不同的可能性来允许用户提供他的输入(输入类型)。 我还有一个选择字段,用于从给定的排序顺序中选择答案。 这些答案是从我的数据库表中读取的。 它是动态的。
用户选择所有必要的输入后,他可以通过单击提交按钮(带有公式)来更新表中的值。 在这个点击过程之后,数据库中的值通过 SQL 更新,再次读取并给出。 因此,用户可以毫无问题地立即看到他的更改。
我的目标是在输入字段中显示更新的值,以便用户可以看到它们。 而这也没有问题。 但不是在选择框。 如果将选择框中的最后一个选定选项声明为选定选项,那就太完美了。 现在我的问题是:
是否可以在选择框中的动态列表中将选项声明为已选择?
<div class="select">
<select name="strategy">
<?php
$resultSet=$conn->query("SELECT test_strategy FROM strategies");
while ($rows = $resultSet->fetch_assoc()){
$strategy = $rows['test_strategy'];
echo "<option id='option' value='$strategy'>$strategy</option>";
}
?>
</select>
</div>
最初从数据库中获取更新的值并分配给变量示例:我使用 $FetchtheUpdatevalueformDB
<div class="select">
<select name="strategy">
<?php
$resultSet=$conn->query("SELECT test_strategy FROM strategies");
while ($rows = $resultSet->fetch_assoc()){
$Selected="";
if($FetchtheUpdatevariableformDB==$strategy){
$Selected="selected";
}
$strategy = $rows['test_strategy'];
echo "<option id='option' value='$strategy' ".$Selected.">$strategy</option>";
}
?>
</select>
</div>
基本上,您希望获取用户值以查看它是否匹配,然后您可以将selected
选项应用于您的元素。
因此,您将需要一个变量,其中包含当前用户选择的test_strategy
,我猜它会保存在您的用户表中。 这只是一个简单的选择查询,就像您在上面所做的那样。
拥有它后,您可以在循环中放置一个if
条件,例如:
<?php
$resultSet=$conn->query("SELECT test_strategy FROM strategies");
while ($rows = $resultSet->fetch_assoc()){
$strategy = $rows['test_strategy'];
if($usersStrategy == $strategy){
echo "<option id='option' value='$strategy' selected>$strategy</option>";
}
else{
echo "<option id='option' value='$strategy'>$strategy</option>";
}
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.