我正在开发一个codeIgniter项目。我使用fullCalendar来插入事件。我想要实现的概念类似于谷歌日历。当用户点击日历中的某一天时,他会插入从点击日期开始的事件。 我从我的视图中做了一个ajax调用并将日期发布到控制器。在控制器中,我想要做的就是用这个值设置开始日期并在日历中插入事件。这是我的代码(控制器)
function add_event()
{
$click_date = $this->input->post('date');
$date= explode(" ", "$click_date ");
$month= (int)$date[1];
$day= (int)$date[2];
$year= (int)$date[3];
$date_start = $this->unix_timestamp($year.'-'.$month.'-'.$day);
$this->load->library('gcal');
$date_end = $this->unix_timestamp('2012-08-15');
$params = array(
'calendarId' => 'my Google calendar id',
'allday' => true,
'start' => $date_start,
'end' => $date_end,
'summary' => 'event',
'description' => "My first event"
);
$response = $this->gcal->eventInsert($params);
if($response)
{
echo "true";
}
}
这是我的unix_timestamp函数:
function unix_timestamp($date)
{
$date = str_replace(array(' ', ':'), '-', $date);
$c = explode('-', $date);
$c = array_pad($c, 6, 0);
array_walk($c, 'intval');
return mktime($c[3], $c[4], $c[5], $c[1], $c[2], $c[0]);
}
在日历上,插入事件但不在正确的开始日期。它从2012-01-01开始,这是我猜的默认日期。我不明白为什么我的开始日期设置不正确。 我做错了什么?有人可以帮助我吗?
答案 0 :(得分:0)
我找到了答案。我应该将fullCalendar日期格式转换为字符串,然后将其发布到控制器。一条线丢失了:
date_format = $.fullCalendar.formatDate(date,"yyyy-MM-dd HH:mm:ss");`
希望它可以帮助那些有同样问题的人 `