Как обновить базу данных после клонирования события в fullcalendar, используя AJAX - PullRequest
1 голос
/ 19 марта 2020

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

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

Я использую следующий код для клонирования событий (взято из предыдущего поста). В настоящее время это не сохраняет в базе данных:

     eventClick: function (event, jsEvent, ui, view) {
     if (!copyKey) return;
     var eClone = {
       id: event.id+1,
       title: event.title,
       tooling: event.tooling,
       start: event.start,
       end: event.end
     };
     $('#calendar').fullCalendar('renderEvent', eClone);
 },

Пример кода, который я использовал для обновления моей базы данных SQL, находится здесь:

eventDrop:function(event)
{
 var start = $.fullCalendar.formatDate(event.start, "Y-MM-DD HH:mm:ss");
 var end = $.fullCalendar.formatDate(event.end, "Y-MM-DD HH:mm:ss");
 var title = event.title;
 var tooling = event.tooling;
 var id = event.id;
 $.ajax({
  url:"update.php",
  type:"POST",
  data:{title:title, tooling:tooling, start:start, end:end, id:id},
  success:function()
  {
   calendar.fullCalendar('refetchEvents');
  }
 });
},

Моя главная путаница в том, как использовать AJAX для моей функции клонирования, а также увеличивать идентификатор при создании нового события.

1 Ответ

0 голосов
/ 19 марта 2020

Пришлось использовать вставку. php вместо обновления. php ...

Окончательный рабочий код:

     eventClick: function (event, jsEvent, ui, view)
 {
     if (!copyKey) return;
     var eClone = {
       id: event.id,
       title: event.title,
       tooling: event.tooling,
       start: event.start,
       end: event.end
     };
     $('#calendar').fullCalendar('renderEvent', eClone);
     var start = $.fullCalendar.formatDate(event.start, "Y-MM-DD HH:mm:ss");
     var end = $.fullCalendar.formatDate(event.end, "Y-MM-DD HH:mm:ss");
     var title = event.title;
     var tooling = event.tooling;
     var id = event.id;
     $.ajax({
      url:"insert.php",
      type:"POST",
      data:{title:title, tooling:tooling, start:start, end:end, id:id},
      success:function()
      {
      $('#calendar').fullCalendar('renderEvent', eClone);
       calendar.fullCalendar('refetchEvents');
      }
     });
 },
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...