我如何从我的数据库 table 中读取事件并在 java 脚本和 jquery 中显示它们各自的日期

How can i read events from my database table and show them in their respective dates in java script and jquery

我使用 Full calendar plugin 来做这个,我已经做了一些但仍然没有达到标准。 听到的是我的脚本代码

$('#calendar').fullCalendar({
            //theme: true,
            header: {
                left: 'prev,next today',
                center: 'title',
                right: 'month,agendaWeek,agendaDay'
            }, 
            buttonText: {//This is to add icons to the visible buttons
                        prev: "<span class='fa fa-caret-left'></span>",
                        next: "<span class='fa fa-caret-right'></span>",
                        today: 'today',
                        month: 'month',
                        week: 'week',
                        day: 'day'
                    },
            editable: true,
            droppable: true, // this allows things to be dropped onto the calendar
            drop: function(date) { // this function is called when something is dropped
                        // retrieve the dropped element's stored Event Object
                        var originalEventObject = $(this).data('eventObject');
                        // we need to copy it, so that multiple events don't have a reference to the same object
                        var copiedEventObject = $.extend({}, originalEventObject);
                        // assign it the date that was reported
                        copiedEventObject.start = date;

                        copiedEventObject.backgroundColor = $(this).css("background-color");
                        copiedEventObject.borderColor = $(this).css("border-color");
                        console.log(copiedEventObject);

                        // render the event on the calendar
                        // the last `true` argument determines if the event "sticks" (http://arshaw.com/fullcalendar/docs/event_rendering/renderEvent/)
                        $('#calendar').fullCalendar('renderEvent', copiedEventObject, true);
                        // is the "remove after drop" checkbox checked?
                       /*alert(date + ' was moved ' + allDay + ' days\n' +
                       '(should probably update your database)');*/ 
                    },
                    //events:"web_master/mycal/ajax_fetch_calendar_data",
            events: function(start, end, timezone, callback) {
                        $.ajax({
                            url: 'web_master/mycal/ajax_fetch_calendar_data',
                            dataType: 'json',
                            type: "POST",
                            success: function(doc) {
                                //console.log(doc);
                            var events = [];
                            $(doc).find('event').each(function(){
                               console.log(doc); 
                                events.push({
                                title: $(this).attr('title'),
                                start: $(this).attr('start') // will be parsed
                                });
                            });

                        }
                        });
                    },
});

在这里,我成功地在活动部分找到了我的文档。 这是从 DB

获取事件的代码
public function ajax_fetch_calendar_data()
{
    try
    {    
        $info = $this->mod_rect->fetch_calendar();
        #pr($info);
        for($i = 0 ; $i < count($info) ; $i++)
        {
            $rows[]= array("id"=>$info[$i]['i_id'], 
                "title"=> $info[$i]['s_title'],
                "start"=> $info[$i]['dt_start_date'],
                "end"=>$info[$i]['dt_end_date'],
                "allDay"=> $info[$i]['s_allDay']);

        }
        if($rows)
        {
            echo json_encode($rows);
        }



    }
    catch(Exception $err_obj)
    {
        show_error($err_obj->getMessage());
    }

}

但是没有找到一个 find(event) 函数。

基本上我需要做的 我有一些事件,那些是从数据库中获取的,我必须将它们拖到即将到来的日期的特定日期(直到完成),但我想将其存储在数据库中并从数据库中获取它们。

我是 java 脚本和 jquery 的新手,我也不知道 JSON。 关于这方面的任何帮助都会对我有所帮助。 谢谢。

几天后我自己搞定了

而且我认为这会对某人有所帮助所以我更新了我的问题

在 Fullcalendar 的事件部分中读取多个事件并在您的 Fullcalendar 中显示它们

events: function(start, end, callback) {
                    $.ajax({
                        url: 'web_master/mycal/ajax_fetch_calendar_data',
                        dataType: 'json',
                        type: "POST",
                        success: function(doc) {
                            var eventObject = [];
                            for(i=0;i<doc.length;i++)
                            {
                                    eventObject.push({
                                    id : doc[i].id,
                                    start : doc[i].start,
                                    end : doc[i].end,
                                    title : doc[i].title
                                    //allDay : doc[i].allDay,
                                    //backgroundColor : doc[i].backgroundColor,
                                    //borderColor : doc[i].borderColor
                                });
                            }
                            callback(eventObject);
                        }
                    });
                },

我用这种方式从我的数据库中获取它

public function ajax_fetch_calendar_data()
    {
        try
        {    
            $info = $this->mod_rect->fetch_calendar();
            echo  json_encode($info);
        }
        catch(Exception $err_obj)
        {
            show_error($err_obj->getMessage());
        }

    }