Выберите $ _POST через часть ключа $ - PullRequest
0 голосов
/ 02 июля 2018

У меня есть форма, которая отправляет данные в другой файл php. Несколько ключей формируются через день, дату и добавление "-towards".

Таблица / Форма:

                    <?php
                        for ($i = 1; $i < 8; $i++){

                            $d=strtotime("+".$i." Day");
                            if (date("l", $d) !== "Saturday" && date("l", $d) !== "Sunday" ){
                                $daydate = $dayOfWeek[date("l",$d)] .'_'. date("d", $d) .'_'.  $month[date("F",$d)];

                                echo "<tr>";
                                echo "<td><strong>". $dayOfWeek[date("l",$d)] .' '. date("d", $d) .' '.  $month[date("F",$d)] . "</strong></td>";
                                echo "<td></td>";
                                echo "<td></td>";
                                echo "<td></td>";
                                echo "</tr>";

                                echo '<tr class="boardingTimeEarly">';
                                echo '<td style="padding-left: 30px; width: 24.5%; display: none">
                                        <input 
                                          class="form-check-input boardEarly1" 
                                          type="radio" 
                                          name="dates['.$daydate.'-to]" 
                                          value=""></input>
                                        <div class="time">0:00</div>
                                      </td>

                                    <td style="width: 24.5%; display: none">
                                        <input
                                          class="form-check-input boardEarly2" 
                                          type="radio" 
                                          name="dates['.$daydate.'-to]"
                                          value=""></input>
                                        <div class="time">0:00</div>
                                    </td>

                                    <td style="width: 24.5%; display: none">
                                        <input 
                                          class="form-check-input boardEarly3" 
                                          type="radio" 
                                          name="dates['.$daydate.'-to]"
                                          value="">
                                        </input>
                                        <div class="time">0:00</div>
                                    </td>

                                    <td style="width: 24.5%; display: none">
                                        <input 
                                          class="form-check-input boardEarly4" 
                                          type="radio" 
                                          name="dates['.$daydate.'-to]" 
                                          value="">
                                        </input>
                                        <div class="time">0:00</div>
                                    </td>   
                                </tr>';
                            }

                        }
                    ?>
            </table>
?>

Я создаю значения для каждого ввода с помощью JQUERY:

 $('#opstaphalte').change(function() { //OPTION IS SELECTED
$.ajax({
    type: 'POST', 
url: 'reserve.php', 
dataType: 'JSON',
data: {
        'station': this.value 
    },

    success: function(response){
        var to = 0;

        if(response['to']){ //CHECK IF RESPONSE CONTAINS INFO
            to = 1;
        }           

        for (var j=0; j<4; j++){

            var tdInput = $('.boardingTimeEarly').find('.boardEarly'+(j + 1));
            var td = $('.boardEarly').find('td');

            //HIDE DIV AND INPUT
            td.css('width', 'auto');
            tdInput.css('display', 'none');

            //Make TD Visible after selection choice
            if(td.css('display') == "none"){
                td.css('display', 'table-cell');
            }

            //TO DESTINATION ------------------------
            if(to){
                if(response['to'][j]){  //show content according to amount of times (max:4)
                    td.css('width', '25%');
                    tdInput.css('display', 'inline-block');
                    tdInput.attr('value', response['to'][j].slice(0,5));    
                    tdInput.next().html(response['to'][j].slice(0,5));
                }
            }
            else{
                //No BOARDINGTIMES KNOWN
                td.css('width', 'auto');
                td.css('display', 'table-cell');
                var noTimes = $('.boardEarly').find('.opstapOchtend1');
                noTimes.next().html("No boardingtimes.");
            }

        }

    } //end SUCCESS

  }); // END AJAX
});

Когда я пытаюсь поместить все значения «в сторону», выбранные в массиве для POST. Я получаю "NUL".

Vardump моего поста

array(5) {
 ["contact_name"]=>
  string(0) ""
 ["company"]=>
  string(0) ""
 ["email"]=>
  string(16) "test@gmail.com"
 ["boardingPlace"]=>
  string(1) "2"
 ["dates"]=>
  NULL
}

Учитывая, что мои ключи к $ _POST имеют разные даты, как их выбрать, чтобы поместить их в почту?

Как выбрать $ _POST с датой в? Поиск ключа $ для дня и «к» или «назад»?

Или есть лучший способ ??

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...