PHP,jQuery FullCalendar-数组未读取变量

PHP,jQuery FullCalendar-数组未读取变量,jquery,fullcalendar,Jquery,Fullcalendar,我正在学习FullCalendar,我有一个名为courts.PHP的PHP文件,其中包含事件:“load.PHP”。在load.php中,我试图通过GET插入一个id。目标是让日历只显示法院的事件 以下是我在courts.php中编写事件的方式: events: 'load.php' load.php包含以下内容: $data = array(); $currentgymid = $_GET['id']; $query = "SELECT * FROM events WHERE g

我正在学习FullCalendar,我有一个名为courts.PHP的PHP文件,其中包含事件:“load.PHP”。在load.php中,我试图通过GET插入一个id。目标是让日历只显示法院的事件

以下是我在courts.php中编写事件的方式:

events: 'load.php'
load.php包含以下内容:

$data = array();
$currentgymid = $_GET['id'];
$query = "SELECT * FROM events WHERE gymID = :gymid ORDER BY id";
$statement = $connect->prepare($query);
$statement->execute(
    array(
        ':gymid' => $currentgymid
    )
);
$result = $statement->fetchAll();
foreach($result as $row)
{
   $data[] = array(
       'id'   => $row["id"],
       'email'   => $row["email"],
       'start'   => $row["start_event"],
       'end'   => $row["end_event"]
      );
}
echo json_encode($data);
我也尝试过使用会话,但似乎不起作用。但是,直接指定整数效果很好。例如:

array(':gymid' => 46)
编辑:这里有更多的代码。在此之前和之后的任何内容都与load.php无关

var calendar = $('#calendar').fullCalendar({
    contentHeight: "auto",
    slotMinutes: 120,
    slotLabelIntervalDuration: "00:30",
    timezone: 'local', 
    defaultView: 'agendaWeek',
    minTime: "<?php echo $open; ?>",
    maxTime: "<?php echo $close; ?>",
    slotDuration: '00:60:00',
    displayEventTime: true,
    editable: false,
    eventStartEditable: false,
    allDaySlot: false,
    selectOverlap: false,
    timeGridEventMinHeight: 1280,
    validRange:{
        start: today
    },

    header:{
     left:'prev,next today',
     center:'title',
     right:''
    },

    events: 'load.php',
    selectable:true,
    selectHelper:true,
var calendar=$(“#calendar”).fullCalendar({
内容高度:“自动”,
时差分钟数:120,
slotLabelIntervalDuration:“00:30”,
时区:“本地”,
defaultView:'agendaWeek',
分钟:“,
maxTime:“”,
慢速持续时间:“00:60:00”,
displayEventTime:true,
可编辑:false,
eventStartEditable:false,
全天时段:错,
选择重叠:false,
timeGridEventMinHeight:1280,
瓦利德兰奇:{
开始:今天
},
标题:{
左:'上一个,下一个今天',
中间:'标题',
对:“”
},
事件:“load.php”,
是的,
selectHelper:对,
请尝试更改(在javascript中)

然后通过传递您的实际ID来更改“46”(使用如下所示的外部参数)

事件:{
url:'load.php',
方法:“GET”,
外部参数:{
id:“”,
},

老实说,这是可行的。不过我还需要更多的测试。我所做的是:events:'load.php?id='@Doxx21如果你想
events:'load.php?id='
那样的话。这将阻止XSS注入,或者将
$id
设置为int。很高兴知道你已经朝着正确的方向前进了。祝你愉快@Doxx21谢谢你所有的回复这些家伙。我想这可能是答案。我会在我做更多的编码后确认。顺便说一句,很抱歉代码太乱了。这是给学校的,我们有时间压力,但我稍后会把它修好。
 events: 'load.php',
 events: 'load.php?id=46',
 events: {
    url: 'load.php',
    method: 'GET',
    extraParams: {
      id: '<?php echo htmlspecialchars($id, ENT_QUOTES);?>',

    },