полное удаление события календаря не работает - PullRequest
0 голосов
/ 04 июля 2018

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

Вот код для JavaScript

    $(function() { // document ready

    var originalDate;

    $('#calendar').fullCalendar({

        eventDragStart: function(event) {
            originalDate = $.fullCalendar.formatDate(event.start, "Y-MM-DD HH:mm");  // Make a copy of the event date
        },

        eventDrop:function(event)
        {
         var start = $.fullCalendar.formatDate(event.start, "Y-MM-DD HH:mm");
         //get new Date

         var id = event.id; //get userID who booked this event 




             $.ajax({
              url:"http://show981111.cafe24.com/login-system/update.php",
              type:"POST",
              data:{newlyBookedDate: start, userID: id, oldDate: originalDate}, // send data 


              success:function()
              {
                    console.log(response);
                    $("#calendar").fullCalendar('refetchEvents');
                    alert("Date has changed.");
                    location.reload();
              }                    
             });



        },

Вот код для update.php. То, что я пытаюсь сделать здесь, это получить измененную дату и обновить недавно зарегистрированную дату, которая имела старую дату, до вновь зарегистрированной даты, которая является измененной датой, когда я получаю из eventDrop.

<?php



$connect = new PDO('mysql:host=localhost;dbname=show981111', 'show981111', 'pass');

if(isset($_POST["newlyBookedDate"]))
{
 $query = "UPDATE DAYSCHEDULE SET newlyBookedDate = :newlyBookedDate WHERE userID = :userID AND newlyBookedDate = :oldDate ";
 $statement = $connect->prepare($query);
 $statement->execute(
  array(

    ':newlyBookedDate' => $_POST['newlyBookedDate'],
    ':userID' => $_POST['userID'],
    ':oldDate' => $_POST['oldDate']


 ));
}

?>

Я проверил консоль, и у меня есть эта ошибка:

fullcalendar.min.js:10 Uncaught TypeError: Cannot read property 'start' of undefined
at function.e.constructor.buildNewDateProfile (fullcalendar.min.js:10)
at function.e.constructor.mutateSingle (fullcalendar.min.js:10)
at function.e.constructor.R.internalApiVersion.f.mutateSingle (scheduler.min.js:6)
at fullcalendar.min.js:10
at Array.forEach (<anonymous>)
at constructor.mutateEventsWithId (fullcalendar.min.js:10)
at reportEventDrop (fullcalendar.min.js:9)
at fullcalendar.min.js:7
at i (fullcalendar.min.js:7)
at constructor.stop (fullcalendar.min.js:7)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...