Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.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 更新具有select选项的表单_Php_Html_Mysqli_Html Select - Fatal编程技术网

Php 更新具有select选项的表单

Php 更新具有select选项的表单,php,html,mysqli,html-select,Php,Html,Mysqli,Html Select,我有一个表单,其中包含用于数据输入的select选项,这些选项是从MySQL数据库获取的。如果我想在以后更新表单,是否可以将表单select选项作为预选选项 在这里,我展示了具有select选项的表单的代码 <?php $queryjob = "SELECT * FROM `job`"; $result2 = mysqli_query($con, $queryjob); $options = ""; while($row2 = mysqli_fetch_array($result2))

我有一个表单,其中包含用于数据输入的select选项,这些选项是从MySQL数据库获取的。如果我想在以后更新表单,是否可以将表单select选项作为预选选项

在这里,我展示了具有select选项的表单的代码

<?php
$queryjob = "SELECT * FROM `job`";
$result2 = mysqli_query($con, $queryjob);

$options = "";

while($row2 = mysqli_fetch_array($result2))
    {
        $options = $options."<option>$row2[1]</option>";
    }

?>


 <tr>
   <td ><div class='tabdata' align="right"> Name of Job/Survey:&nbsp;</div></td>
   <td > <div class='tfieldz' align="right">
         <select class='tfieldz' id="job_name" name="job_name" required='required'>
        <?php echo $options;?>
        </select></div>
  </td>
</tr>

据我所知,您正在尝试设置selectbox的默认选定值。要设置此值,可以使用以下代码:

/** The selectbox default value. This can come from database */
$selectbox_value = "selectbox default value";
while($row2 = mysqli_fetch_array($result2))
    {
        if ($selectbox_value == $row2[1]) $options = $options."<option SELECTED value='".$row2[1]."'>$row2[1]</option>";
        else $options = $options."<option value='".$row2[1]."'>$row2[1]</option>";
    }
在上面的代码中,value属性被添加到option标记中。提交表单时,value属性的值被发送到服务器并存储在数据库中。此存储值应从数据库中读取并保存到$selectbox\u value

您可以向选项添加一个selected=属性以预选该选项

示例如下所示:

//You could use this in your loop

if($saved_value == $row[1]){
  echo "<option selected>$row[1]</option>";
}else{
  echo "<option>$row[1]</option>";
}

这当然是可能的。但是,目前,代码没有指示在再次显示表单之前,所选选项首先存储在何处。因此,有效地说,没有任何参考来进行比较。在你的情况下,你唯一需要做的改变是。。。。虽然$row2=mysqli_fetch_array$result2{如果$row2[1]=$some_先前存储的_值{$options=$options.$row2[1];}其他{$options=$options.$row2[1];}是存储在数据库中的所有选项吗?@Dhruv Saxena非常感谢,它工作得很好