У меня есть Fullcalendar, который показывает события из таблицы mysql (название + дата-время), а также вставляет новые события, нажимая на день в календаре.Вставьте событие с другой датой, отличной от текущей даты на mysql, с Fullcalendar
Проблема в том, что он вставляет события только в текущий день, даже если пользователь нажал на будущую дату или месяц. Я хочу, чтобы пользователь мог вставлять будущие события таким же образом, как и сейчас.
Fullcalendar скрипт, который показывает события (events.php) и вставить, нажав на день (название) отправив эту информацию в «add_event.php»
$(document).ready(function() {
var calendar = $('#calendar').fullCalendar({
editable: true,
events: "http://localhost/test-fullcalendar/php/eventos.php",
lang: "es",
selectable: true,
selectHelper: true,
select: function(start, end, allDay) {
var title = prompt('Evento a insertar:');
if (title) {
start = moment(event.start).format('YYYY-MM-DD HH:mm:ss');
end = moment(event.end).format('YYYY-MM-DD HH:mm:ss');
$.ajax({
url: 'php/add_evento.php',
type: 'POST',
data: {title: title, start: start, end: end},
success: function(json) {
alert("Evento insertado");
console.log("Enviando: ", title, start, end);
}
});
calendar.fullCalendar('renderEvent',
{
title: title,
start: start,
end: end,
allDay: allDay
},
true
);
}
calendar.fullCalendar('unselect');
}
});
});
Я добавил '' event'' перед тем '' (старт)'' и '' (конец)'', потому что без '' event' 'Он не может корректно отображать часовой формат, и он показывает только 00:00:00 в консоли, нажав на событие 3march: 'the-title 2015-03-03 00:00:00 2015-03-04 00:00: 00'. Я прочитал документ Fullcalendar и 'HH: mm: ss' - единственный способ получить часовой формат, который мне нужен для моей таблицы mysql (столбец DATETIME). Спасибо за ваш ответ – AvkZ
В обратном вызове 'select' отсутствует переменная 'event', так что вы пытались получить доступ к несуществующей переменной, и поэтому преобразование в DATETIME было выполнено в текущую дату вместо фактической даты, выбранной календарем. Переменная 'event' передается другим обратным вызовам Fullcalendar, но не' select'. – AlexL
Я понимаю, что вы объясняете, но я не вижу, где решение проблемы. Добавляя 'event' как переменную, переданную функции' select', например 'select: function (start, end, event, allDay)', она возвращает только то же самое, а не дату точно события/названия. Спасибо – AvkZ