Извлечение / передача данных о дате и опциях в базу данных через Ajax - PullRequest
1 голос
/ 09 ноября 2019

У меня проблемы с ajax, не удалось передать значение из формы по умолчанию (input type="data") вместе с элементами тега option

Я пробовал способы сбора данных для получения даты, но проблема в том, чтоя не использую datapicker, я использую PHP по умолчанию input type="date". я хочу передать два значения: date и court_id для выполнения / отображения моей таблицы из базы данных (сразу после нажатия двух форм).

 /*this is display.php file*/
<input type="date" name="date_staff" id="staff_pick_date_ticket">

<select name='courtid' id='staff_select_court' multiple>
<option value='".$row['court_id']."'>".$row['courtTitle']."</option>
</select>

<div id="time_available">

/*this is myjs.php file*/
<script>  
   $(document).ready(function(){
   $('#staff_pick_date_ticket').click(function(){
    var date_id =$(this).data('staff_pick_date_ticket');
    $('#staff_select_court option').click(function() { 
        var court_id= $(this).attr('value'); 
        var action = 'show_time';
        $.ajax({
            url:"action.php",
            method:"POST",
            data:{date_id:date_id, court_id:court_id, action:action},
            success:function(data){
                $('#time_available').html(data);

              }
          })
      })
  })
  );  
</script>  

/*this is action.php file*/
if(isset($_POST['action'])){
if($_POST['action'] == 'show_time'){
$data = array(
    ':date_id' =>date("d/m/Y",strtotime($_POST["date_id"])),
    ':court_id'=>$_POST["court_id"]
    );
    echo $data[':date_id'];
    echo $data[':court_id'];
}
}

court_id может быть обнаружен, но date_id равен нулю. Я не знаю почему? Любое решение здесь?

1 Ответ

0 голосов
/ 09 ноября 2019

Проблема в том, что вы не получаете значение поля даты

Замените

var date_id =$(this).data('staff_pick_date_ticket');

на

var date_id =$('#staff_pick_date_ticket').val();

Вы получите значение даты

...