php - 以一种形式从具有相同名称的多个多选下拉列表中检索数据

标签 php html

我正在尝试在一个页面和一个表单上处理多个具有相同名称的多选框/下拉列表。它们具有相同的名称,因为这些下拉菜单/框是动态添加的。我的问题是如何单独检索每个选择框的数据。它显示的结果是这样的:

Array(
        [0] => M
        [1] => T
        [2] => W 
 )

但我想要这样的结果

  Array
  (
     [0] => Array(
               [0] => M
               [2] => T
             )
     [1] => Array(
               [0] => W
             )
  )

我正在尝试这段代码:

  <td class="v-align-middle semi-bold sorting_1">
                            <div class="form-group form-group-default form-group-default-select2 full-width days" id="111">
                                    <label>SELECT DAYS</label>
                                    <select id="dw" name="days[]" class="full-width select2-offscreen" data-init-plugin="select2" multiple="" tabindex="-1">
                                        <option value="M">Monday</option>
                                        <option value="T">Tuesday</option>
                                        <option value="W">Wednesday</option>
                                        <option value="Th">Thursday</option>
                                        <option value="F">Friday</option>
                                        <option value="Sa">Saturday</option>
                                        <option value="Su">Sunday</option>
                                    </select>

                            </div> <br/>
                        </td>
                        <td>

这是我用来克隆我的表的代码:

   $('.add-ins').on('click', function(){
     var selfId = $(this).attr('id');
     var tId = $(this).parent().parent().find('table').attr('id');
     var lastId = $('.timings#'+tId+' tbody tr:visible:last').attr('id');
     lastId++;
     $('select').select2('destroy'); /* destroy select2 from select tag and then clone it */          
    var clonerow = $('.timings#'+tId+' tbody tr:visible:last').clone(true, true).attr('id', lastId);
    clonerow.appendTo('.timings#'+tId+' tbody');
    $('select').select2(); /* enable Select2 on the select elements */
});

PHP 代码:

  $days = $_POST['days'];
  foreach($days as $value){
       echo $value; 
       foreach($value as $week){ 
     echo  $week; 
     }
  }

或者只是这样:

   print_r($days);

请在这方面帮助我。如果有任何其他解决方案,例如为每个选择框使用不同的名称,请告诉我如何使用 php $_POST 发布它们,因为我不知道用户将添加多少个多选框。

我们将不胜感激您的建议。提前致谢。

亲切的问候

最佳答案

请像这样在html中编码

<select id="dw" name="days[0][]" class="full-width select2-offscreen" data-init-plugin="select2" multiple="" tabindex="-1">
 <option value="M">Monday</option>
 <option value="T">Tuesday</option>
 <option value="W">Wednesday</option>
 <option value="Th">Thursday</option>
 <option value="F">Friday</option>
 <option value="Sa">Saturday</option>
 <option value="Su">Sunday</option>
</select>

<select id="dw" name="days[1][]" class="full-width select2-offscreen" data-init-plugin="select2" multiple="" tabindex="-1">
 <option value="M">Monday</option>
 <option value="T">Tuesday</option>
 <option value="W">Wednesday</option>
 <option value="Th">Thursday</option>
 <option value="F">Friday</option>
 <option value="Sa">Saturday</option>
 <option value="Su">Sunday</option>
</select>

关于php - 以一种形式从具有相同名称的多个多选下拉列表中检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35860212/

相关文章:

php - 将 httpbody 作为 json 参数 swift 发布

javascript - Ajax、JSON 对象与 php 交互

php - 在 cookie 中存储多个二进制值

html - anchor 链接根据绝对定位元素的高度截断页面

javascript - 为iPhone改编网站的问题

java - 使用 selenium webdriver 从屏幕 A(网页)跳转到屏幕 B(网页),绕过中间屏幕(网页)

php - 如何禁用 NetBeans 中特定文件类型的错误解析

php - 透明背景颜色不适用于移动设备

php - 使用 Magento 时,接近开发环境的好方法是什么?

javascript - CSS 转换和时间安排似乎不对