选择表单 - 如果空白则使用上次发布的值

时间:2015-02-21 15:23:55

标签: php html forms select post

对不起,请提前告知新手问题...

我目前将我的第一个价值作为残疾人和违约行为"选择"选项,然后在进行选择时更改为所选选项。

但是,如果用户再次提交而未重新选择,则该值会默认返回,因为该帖子为空。因此,有没有办法使用前一个值?

<select name="test_select" style="width: 110px">
    <option disabled="disabled" selected="selected">
    <?php 
        if(!empty($_POST['test_select'])){
            echo $_POST[test_select'];} 
        else 
            echo "Select Option"; ?>
    </option>
    <?php $sql = mysql_query("SELECT test FROM test_settings"); 
    while ($row = mysql_fetch_array($sql)){
        ?><option><?php echo $row['test']; ?></option><?php }?>
</select>

提前致谢,

1 个答案:

答案 0 :(得分:1)

我认为问题在于表单没有发送禁用值。

我会按如下方式编辑代码:

<select name="test_select" style="width: 110px">
<?php 
    if (empty($_POST['test_select']))
      echo '<option selected="selected">Select Option</option>'; 
    $sql = mysql_query("SELECT test FROM test_settings"); 
    while ($row = mysql_fetch_array($sql)){
      $selected = isset($_POST['test_select']) && $row['test'] == $_POST['test_select'] 
        ? ' selected="selected"' 
        : '';
      echo '<option'.$selected.'>'.$row['test'].'</option>'; 
?>
</select>