Reputation: 1
I'm trying to display the results (e.g. the events) of my calendar from my database onto the FullCalendar, but for some reason, my PHP code won't pull those results in. I am initiating a try, catch in order to see if the process will go through upon connection is successful with database and yes I am connected successfully, however it is still not pulling those events. I am running a foreach and initiating them in an associative array.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<!-- <link rel="stylesheet" href="./css/bootstrap.min.css">
<link rel="stylesheet" href="./css/fullcalendar.min.css">
<script src="./js/jquery.min.js"></script>
<script src="./js/jquery-ui.min.js"></script>
<script src="./js/fullcalendar.min.js"></script>
<script src="./js/moment.min.js"></script> -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.4.0/fullcalendar.css" />
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha.6/css/bootstrap.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.4.0/fullcalendar.min.js"></script>
<script>
$(document).ready(function () {
var calendar = $('#calendar').fullCalendar({
editable: true,
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
events: './php/load.php',
selectable: true,
selectHelper: true,
select: function (start, end, allDay) {
var title = prompt("Enter Event Title");
if (title) {
var start = $.fullCalendar.formatDate(start, "Y-MM-DD HH:mm:ss");
var end = $.fullCalendar.formatDate(end, "Y-MM-DD HH:mm:ss");
$.ajax({
url: "./php/insert.php",
type: "POST",
data: {
title: title,
start: start,
end: end
},
success: function () {
calendar.fullCalendar('refetchEvents');
alert("Added Successfully");
}
})
}
},
editable: true,
eventResize: 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 id = event.id;
$.ajax({
url: "./php/update.php",
type: "POST",
data: {
title: title,
start: start,
end: end,
id: id
},
success: function () {
calendar.fullCalendar('refetchEvents');
alert('Event Update');
}
})
},
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 id = event.id;
$.ajax({
url: "./php/update.php",
type: "POST",
data: {
title: title,
start: start,
end: end,
id: id
},
success: function () {
calendar.fullCalendar('refetchEvents');
alert("Event Updated");
}
});
},
eventClick: function (event) {
if (confirm("Are you sure you want to remove it?")) {
var id = event.id;
$.ajax({
url: "./php/delete.php",
type: "POST",
data: {
id: id
},
success: function () {
calendar.fullCalendar('refetchEvents');
alert("Event Removed");
}
})
}
},
});
});
</script>
</head>
<body>
<div class="container">
<div id="calendar"></div>
</div>
</body>
</html>
<?php
//load.php
$dbhost = "localhost";
$dbname = "";
$dbuser = "";
$dbpass = "";
try {
$conn = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
$data = array();
$query = "SELECT * FROM events ORDER BY id";
$statement = $conn->prepare($query);
$statement->execute();
$result = $statement->fetchAll(PDO::FETCH_ASSOC);
foreach($result as $row)
{
$data[] = array(
'id' => $row["id"],
'title' => $row["title"],
'start' => $row["start_event"],
'end' => $row["end_event"]
);
}
echo json_encode($data);
} catch(PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
?>
Upvotes: 0
Views: 198