Php 尝试循环浏览html下拉列表

Php 尝试循环浏览html下拉列表,php,html,Php,Html,这里有一些类似的问题,但我想做的是循环遍历每个选项元素并将它们回送出去,到目前为止,它只回送所选的项目,而理想情况下,我将循环遍历每个项目 <?php if (isset($_POST['submit'])) { $st_campaigns = $_POST['campaigns']; foreach ($st_campaigns as $st) { echo $st; } } ?> <form action="" method="p

这里有一些类似的问题,但我想做的是循环遍历每个选项元素并将它们回送出去,到目前为止,它只回送所选的项目,而理想情况下,我将循环遍历每个项目

<?php
if (isset($_POST['submit'])) {
    $st_campaigns = $_POST['campaigns'];

    foreach ($st_campaigns as $st) {
        echo $st;
    }
}
?>

<form action="" method="post">
<select name="campaigns[]" id="campaigns[]" size="15" multiple="multiple"   style="width:150">
<option>item</option>
<option>item1</option>
<option>item</option>
<option>item</option>
<option>item</option>
<option>item</option>
<option>item</option>
</select>
<input type="submit" name="submit" />
</form>

项目
项目1
项目
项目
项目
项目
项目

只有选定的项目与表单数据一起提交。如果您想要所有可能的选择项,您需要将它们放入一个数组中,然后您可以使用该数组填充/生成选择字段,并在表单提交后出于任何原因对其进行循环。

您需要一种解决方法

  • 在表单中添加一个名为“选项”的隐藏字段(例如)

  • 提交时,使用Javascript循环遍历项目并生成字符串。逗号分隔或JSON可能是更好的选择。因此,所有选项(无论是否选中)都将在字符串中

  • 将隐藏字段(选项)的值更改为JSON字符串

  • 提交表单时,使用php阅读
    $\u POST['options']
    ,而不是
    活动
    ,将JSON更改为数组(或拆分csv,具体取决于您选择的内容),然后循环执行


  • 通过首先循环
    活动
    并创建键值,然后使用php
    数组(key)存在
    查看键是否存在,或者如果您只需将所选项目添加到数组中,则始终可以匹配所选项目。

    谢谢,我基本上希望循环每个项目,在循环中,我将根据同名项列表更新数据库中的一些信息,因此在我的项目中,此列表是动态填充的。这非常有效。尽管我本来打算将数据放入数组,但我正在静态测试。