更新/编辑表单,以便从sql表中加载选定的SELECT选项值

时间:2016-06-25 10:07:47

标签: javascript php mysql sql mysqli

在这里,我已经在sql表中提交了我的表单值,带有一个多选,我在其中序列化了<options>&amp;的选定值。插入SQL列:fldR。

现在,我正在尝试更新此表单信息,并尝试使用SQL表中的提取值加载此form.php。我想用fetched - selected选项值填充MULTIPLE选项。

PHP:

 $data = mysqli_fetch_object($result);
 $selected_values = unserialize($data->fldR);

现在该怎么办?

HTML / PHP:

<select name="rtype[]" id="rtype" class="myselect" multiple="multiple" style="height:6em">
      <option value="hr">H1</option>
      <option value="fr">F1</option>
      <option value="rnr">R1</option>
</select>

任何有创意的想法如何做到这一点?

1 个答案:

答案 0 :(得分:0)

我们可以使用in_array()检查数据中的值是否,如果是,则执行某些代码。

in_array()可以接受两个参数,第一个参数是您需要检查的值,第二个参数是要检查的数组。

现在更新您的 PHP / HTML 代码,默认情况下从数据库中选择SELECT框中的值。

如下所示,

<select name="rtype[]" id="rtype" class="myselect" multiple="multiple" style="height:6em">
      <option value="hr" <?php if(in_array('hr',$selected_values)) { ?> selected="selected" <?php } ?>>H1</option>
      <option value="fr" <?php if(in_array('fr',$selected_values)) { ?> selected="selected" <?php } ?>>F1</option>
      <option value="rnr" <?php if(in_array('rnr',$selected_values)) { ?> selected="selected" <?php } ?>>R1</option>
</select>

http://php.net/manual/en/function.in-array.php