在php中保留选定选项

在php中保留选定选项,php,forms,select,Php,Forms,Select,我有一个下拉选择表单,我需要使它保持不变的选项,每次我保存 所以我想要的是,当我从下拉列表中选择一个选项时,它在我提交表单并下次返回表单时保持不变 我在google上试过很多东西,但似乎都不起作用。只需在您想要默认选择的选项中传递selected=selected,如: <option value="5 Days" selected="selected">5 Days</option> 课程将帮助您完成tha。你应该试试看。它会帮助你的。 下面是您的主页,如index.

我有一个下拉选择表单,我需要使它保持不变的选项,每次我保存

所以我想要的是,当我从下拉列表中选择一个选项时,它在我提交表单并下次返回表单时保持不变

我在google上试过很多东西,但似乎都不起作用。

只需在您想要默认选择的选项中传递selected=selected,如:

<option value="5 Days" selected="selected">5 Days</option>

课程将帮助您完成tha。你应该试试看。它会帮助你的。 下面是您的主页,如index.php

<?php
session_start();
?>
<select id="editlength" name="editlength" class="form-control">
    <option value="1 Day" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '1 Day') { ?> selected <?php } ?>>1 Day</option>
    <option value="2 Days" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '2 Days') { ?> selected <?php } ?>>2 Days</option>
    <option value="3 Days" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '3 Days') { ?> selected <?php } ?>>3 Days</option>
    <option value="4 Days" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '4 Days') { ?> selected <?php } ?>>4 Days</option>
    <option value="5 Days" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '5 Days') { ?> selected <?php } ?>>5 Days</option>
    <option value="6 Days" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '6 Days') { ?> selected <?php } ?>>6 Days</option>
    <option value="10 Days" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '10 Days') { ?> selected <?php } ?>>10 Days</option>
    <option value="1 Week" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '1 Week') { ?> selected <?php } ?>>1 Week</option>
    <option value="2 Weeks" <?php if(isset($_SESSION['editlength']) &&$_SESSION['editlength'] == '2 Weeks') { ?> selected <?php } ?>>2 Weeks</option>
    <option value="3 Weeks" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '3 Weeks') { ?> selected <?php } ?>>3 Weeks</option>
    <option value="1 Month" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '1 Month') { ?> selected <?php } ?>>1 Month</option>
    <option value="2 Months" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '2 Months') { ?> selected <?php } ?>>2 Months</option>
    <option value="3 Months" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '3 Months') { ?> selected <?php } ?>>3 Months</option>
    <option value="4 Months" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '4 Months') { ?> selected <?php } ?>>4 Months</option>
    <option value="5 Months" <?php if(isset($_SESSION['editlength']) && $_SESSION['editlength'] == '5 Months') { ?> selected <?php } ?>>5 Months</option> 
</select>
Javscript for ajax调用将其放在主页上:

<script>
$(document).ready(function(){
    $('#editlength').on('change', function() {
      var val = jQuery("#editlength").val();
      $.ajax({
            url: "store_editlength.php",
            data: { editlength: val },
            type: 'POST',
            success: function (data) {
                // here no need of response
            }
        });

    });
});
</script>
store_editlength.php

<?php
session_start();
if (isset($_POST['editlength']) && $_POST['editlength'] != '') {
 $_SESSION['editlength'] = $_POST['editlength'];
}
?>

我希望它设置为与用户设置的相同,这样它就不会在每次我重新加载页面时更改。它适用于可购买的套餐,该选项是套餐的有效期。我希望这样,当我更改日期时,它会在最后选择的日期上显示,因为每次我去设置日期时,它都会重置选项。Put selected=selected处于一个条件中,您必须根据用户给定的值来测试选项值。对不起,这对我来说没有意义。>9个月可以这样做吗,然后对其余的用户执行此操作?在会话中存储所选值我如何执行此操作…您想在每次用户重新加载或返回页面时选择所选选项,对吗?因此,这是一个程序包应该持续多长时间的下拉框。我想要它,所以每次我回到它,它与我上次设置的相同。取决于会话时间唯一的问题是我有多个计划/包,这意味着对所有计划/包的选择都相同:/