Guest User

Untitled

a guest
Mar 7th, 2020
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.52 KB | None | 0 0
  1. <html>
  2. <?php
  3. include "connection.php";
  4. ?>
  5. <head>
  6. <script src='jquery-3.4.1.min.js'></script>
  7. <script type="text/javascript" src="chart.js"></script>
  8. </head>
  9. <body>
  10. <form method="get">
  11. <select name="year" size="1" >
  12. <option value="2014">2014</option>
  13. <option value="2015">2015</option>
  14. <option value="2016">2016</option>
  15. </select>
  16. <input type="submit"></input>
  17. </form>
  18. <div id="chart-container">
  19. <canvas id="myChart"></canvas>
  20. </div>
  21. </body>
  22. </html>
  23.  
  24. data.php file
  25.  
  26. <?php
  27. include "connection.php"
  28.  
  29. $year=$_GET['year'];
  30. $sql = "SELECT Bookings, Destination from topflights WHERE Year ='".$year."'";
  31. $result = mysqli_query($con, $sql);
  32.  
  33. //variables
  34. $dataX = array();
  35. $dataY = array();
  36.  
  37. //Loop to get the data
  38. while($row = mysqli_fetch_assoc($result)){
  39. array_push($dataX, $row['Destination']);
  40. array_push($dataY, $row['Bookings']);
  41. }
  42.  
  43. header('Content-Type: application/json');
  44. echo json_encode(array(
  45. "dataX" => $dataX,
  46. "dataY" => $dataY
  47. ));
  48. ?>
  49.  
  50. Javascript file:
  51.  
  52. function renderHtmlChart() {
  53. var myChart = document.getElementById('myChart').getContext('2d');
  54. var universalOptions = {
  55. title: {
  56. display: true,
  57. text: "Top 5 Flights Booked in the Year <?php echo $_GET['year'];?>"
  58. },
  59. legend: {
  60. display: false,
  61. },
  62. scales: {
  63. yAxes: [{
  64. display: true,
  65. ticks: {
  66. beginAtZero: true,
  67. }
  68. }],
  69.  
  70. }
  71. }
  72.  
  73. $.ajax({
  74. url: 'data.php',
  75. method: 'GET',
  76. success: function(response) {
  77. var dataX = response.dataX;
  78. var dataY = response.dataY;
  79.  
  80. var data = {
  81. type: 'bar',
  82. data: {
  83. labels: dataX,
  84. datasets: [{
  85. label: 'top flights',
  86. data: dataY,
  87. backgroundColor: ['tomato', 'green', 'blue', 'cyan', 'orange'],
  88. borderWidth: 1,
  89. borderColour: 'grey',
  90. hoverBorderColor: 'black'
  91. }],
  92. },
  93. options: universalOptions
  94. }
  95.  
  96. var Chart = new Chart(myChart, data);
  97. }
  98. });
  99. }
  100. $(document).ready(function() {
  101. renderHtmlChart();
  102. });
Advertisement
Add Comment
Please, Sign In to add comment