Работа с формой обработки нескольких массивов - PullRequest
0 голосов
/ 26 января 2020

Я, кажется, продолжаю сталкиваться с проблемами, пытаясь заставить этот код работать, и я понимаю, что это, вероятно, простое решение, но я не могу понять его.

У меня есть форма, которая при нажатии определенной кнопки динамически генерируются два поля jquery datepicker и два поля jquery множественный выбор при каждом нажатии кнопки. Это прекрасно работает, однако на бэкэнд при обработке данных двух полей множественного выбора, я могу получить только одну вещь, которая была выбрана из каждого (например, первое поле множественного выбора имеет номера 1,2,3,4. Если кто-то выбирает больше чем одно из этих чисел и попаданий, то мой сценарий видит только первое выбранное число, а не каждое.

Это соответствующий код, который я использую для обработки данных:

    $b = 1;
    foreach(array_combine($_POST['eventdateFrom'], $_POST['eventdateTo']) as $from => $to){
    echo "<br>";

    $date[$b] = $from."[Periods: ".$_POST['pcFrom'][$b][$b]."] - ".$to."[Periods: ".$_POST['pcTo'][$b][$b]."]";

    $b++;
    }

Этот код используется кнопкой для создания динамических c полей:

    var x=0;
    $('.addmore').click(function(e) {
       e.preventDefault();
        x++; 


         $('.input_fields_wrap').append('<div class="newDate"><div class="form-row"><div class="form-group col-sm-2"><label class="col-form-label-sm" for="inputEmail4">&nbsp;</label></div><div class="form-group col-auto"><label class="col-form-label col-form-label-sm" for="inputEmail4">From</label><input type="text" class="form-control form-control-sm datepicker" id="eventdateFrom' + x + '" name="eventdateFrom[]" placeholder="DD-MM-YYYY" value=""><select name="pcFrom[' + x + '][' + x + ']" class="pselect" id="pcFrom' + x + '" multiple="multiple"><option selected>All</option><option value="1" >1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option></select></div><div class="form-group col-auto"><label class="col-form-label col-form-label-sm" for="inputPassword4">To</label><input type="text" class="form-control form-control-sm required datepicker" id="eventdateTo' + x + '" name="eventdateTo[]" placeholder="DD-MM-YYYY" value=""><select name="pcTo[' + x + '][' + x + ']" class="pselect" id="pcTo' + x + '" multiple="multiple"><option selected>All</option><option value="1" >1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option></select></div></div><div class="form-group row"><label for="providerLabel" class="col-form-label col-form-label-sm col-sm-2">&nbsp;</label><div class="col-sm-5"><button type="button" class="form-control-sm required removeDate btn btn-danger btn-sm"><i class="fas fa-minus"></i> Remove Date</button></div></div></div>');

        $('.pselect').multiselect();
        $('.pselect').multiselect('rebuild');

    });

    $(document).on("focus", ".datepicker", function(){
    $(this).datepicker();
    });

    $('.input_fields_wrap').on("click",".removeDate", function(e){ //user click on remove text
        e.preventDefault(); $(this).closest('div.newDate').remove(); x--;
    })
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...