将多选中的最后一个选项保存到会话变量后,为什么不能取消选择它?

马加利克

我有一个多选,它使用会话变量保存当前选择的选项。但是,当我取消选择所有选项时,最后选择的选项会保留。我该如何解决?这是我的代码:

<!DOCTYPE html>
<?php
    session_start();

    if(isset($_POST['occupation']))
        $_SESSION['occupation'] = $_POST['occupation'];
?>
<html>
<head>

</head>
<body>
    <form method="post" action="">
        <h2>Industy</h2>
        <select name="occupation[]" multiple >
            <?php 
                $occ = array("Accounting", "Education", "Healthcare", "Information Technology", "Retail", "Sales");

                $len = count($occ);

                for($i = 0; $i<$len; $i++ )
                {
                    if(in_array($occ[$i], $_SESSION['occupation']))
                        echo '<option value="' . $occ[$i] . '" selected>' . $occ[$i] .'</option>';
                    else
                        echo '<option value="' . $occ[$i] . '" >' . $occ[$i] .'</option>';
                } 

            ?>
        </select>
        <br/><br/>
        <button type="submit" value="Search" class="my-button" name="search_button" >Search</button>
    </form>
</body>
</html>
凯文

只需添加到您的代码中,如果您在没有任何值的情况下提交,只需将会话数组覆盖为空。

这是想法:

<?php
session_start();
$occ = array("Accounting", "Education", "Healthcare", "Information Technology", "Retail", "Sales");

if (empty($_SESSION['occupation'])) { // initialize
    $_SESSION['occupation'] = array();
}

if(isset($_POST['search_button'])) { // if submitted
    // set session occupation else just set empty
    $_SESSION['occupation'] = !empty($_POST['occupation']) ? $_POST['occupation'] : array();
}

?>
<!DOCTYPE html>
<html>
<head>

</head>
<body>
    <form method="post" action="">
        <h2>Industy</h2>
        <select name="occupation[]" multiple>
            <?php foreach ($occ as $o) { ?>
            <option value="<?php echo $o; ?>" <?php echo in_array($o, $_SESSION['occupation']) ? 'selected' : ''; ?>>
                <?php echo $o; ?>
            </option>
            <?php } ?>
        </select>
        <br/><br/>
        <button type="submit" value="Search" class="my-button" name="search_button" >Search</button>
    </form>
</body>
</html>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么不能取消绑定此服务?

来自分类Dev

为什么光滑的滑块不能取消过滤类?

来自分类Dev

为什么不能取消引用对象的指针?

来自分类Dev

我为什么不能取消这个过程?

来自分类Dev

为什么我不能取消绑定此服务?

来自分类Dev

为什么我不能取消重复的UILocalNotification?

来自分类Dev

为什么客户端在这种情况下不能取消引用指针?

来自分类Dev

在HashMap上进行迭代时,为什么不能取消此元组的结构?

来自分类Dev

为什么我不能取消引用C中的struct指针?

来自分类Dev

为什么我不能取消旋转(融化)此熊猫数据框(Python)

来自分类Dev

为什么客户端在这种情况下不能取消引用指针?

来自分类Dev

为什么我不能取消设置 Veracrypt vfat 分区中文件的可执行位?

来自分类Dev

我可以选择一个节点但不能在jsTree中选中/取消选中它吗?

来自分类Dev

“不能取消引用int”

来自分类Dev

不能取消引用char

来自分类Dev

Swift不能取消存档数据

来自分类Dev

为什么即使选择了上一个选项,总是显示最后一个选择选项

来自分类Dev

不能取消选中带有输入按钮的复选框,我的复选框出了什么问题?

来自分类Dev

为什么我不能取消引用或添加泛型类型,即使我传入了可以取消引用和添加的类型?

来自分类Dev

选中一个按钮后取消选择另一个按钮

来自分类Dev

微软家族:为什么我不能取消对Google Chrome浏览器(甚至不在列表中)的时间限制?

来自分类Dev

为什么需要将创建的 PDO 对象保存到下一个变量?

来自分类Dev

为什么我不能取变量的地址?

来自分类Dev

选中一个复选框会在Tkinter中取消选择其他选项

来自分类Dev

为什么我不能在Assembly中声明一个使用已取消引用的变量的值的变量?

来自分类Dev

将数组保存到会话并检索,CodeIgniter

来自分类Dev

流星:将RegExp对象保存到会话

来自分类Dev

将某些生成的html表保存到会话中

来自分类Dev

在R /闪亮中取消选择最后一个选项时,如何选择全部?

Related 相关文章

  1. 1

    为什么不能取消绑定此服务?

  2. 2

    为什么光滑的滑块不能取消过滤类?

  3. 3

    为什么不能取消引用对象的指针?

  4. 4

    我为什么不能取消这个过程?

  5. 5

    为什么我不能取消绑定此服务?

  6. 6

    为什么我不能取消重复的UILocalNotification?

  7. 7

    为什么客户端在这种情况下不能取消引用指针?

  8. 8

    在HashMap上进行迭代时,为什么不能取消此元组的结构?

  9. 9

    为什么我不能取消引用C中的struct指针?

  10. 10

    为什么我不能取消旋转(融化)此熊猫数据框(Python)

  11. 11

    为什么客户端在这种情况下不能取消引用指针?

  12. 12

    为什么我不能取消设置 Veracrypt vfat 分区中文件的可执行位?

  13. 13

    我可以选择一个节点但不能在jsTree中选中/取消选中它吗?

  14. 14

    “不能取消引用int”

  15. 15

    不能取消引用char

  16. 16

    Swift不能取消存档数据

  17. 17

    为什么即使选择了上一个选项,总是显示最后一个选择选项

  18. 18

    不能取消选中带有输入按钮的复选框,我的复选框出了什么问题?

  19. 19

    为什么我不能取消引用或添加泛型类型,即使我传入了可以取消引用和添加的类型?

  20. 20

    选中一个按钮后取消选择另一个按钮

  21. 21

    微软家族:为什么我不能取消对Google Chrome浏览器(甚至不在列表中)的时间限制?

  22. 22

    为什么需要将创建的 PDO 对象保存到下一个变量?

  23. 23

    为什么我不能取变量的地址?

  24. 24

    选中一个复选框会在Tkinter中取消选择其他选项

  25. 25

    为什么我不能在Assembly中声明一个使用已取消引用的变量的值的变量?

  26. 26

    将数组保存到会话并检索,CodeIgniter

  27. 27

    流星:将RegExp对象保存到会话

  28. 28

    将某些生成的html表保存到会话中

  29. 29

    在R /闪亮中取消选择最后一个选项时,如何选择全部?

热门标签

归档