Guest User

Untitled

a guest
Mar 7th, 2020
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.64 KB | None | 0 0
  1. Index.php file
  2. <html>
  3. <?php
  4. include "connection.php";
  5.  
  6. ?>
  7. <head>
  8. <script type="text/javascript" src="chart.js"></script>
  9. <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.js"></script>
  10. </head>
  11. <body>
  12. <form method="get">
  13. <select name="year" size="1" >
  14. <option value="2014">2014</option>
  15. <option value="2015">2015</option>
  16. <option value="2016">2016</option>
  17. </select>
  18. <input type="submit"></input>
  19. </form>
  20. <div>
  21. <canvas id="myChart"></canvas>
  22. </div>
  23. </body>
  24. </html>
  25. data.php file
  26. <?php
  27. $year=$_GET['year'];
  28. $sql = "SELECT Bookings, Destination from topflights WHERE Year ='".$year."'";
  29. $result = mysqli_query($con, $sql);
  30.  
  31. //variables
  32. $dataX = array();
  33. $dataY = array();
  34.  
  35. //Loop to get the data
  36. while($row = mysqli_fetch_assoc($result)){
  37. array_push($dataX, $row['Destination']);
  38. array_push($dataY, $row['Bookings']);
  39. }
  40.  
  41. header('Content-Type: application/json');
  42. echo json_encode(array(
  43. "dataX" => $dataX,
  44. "dataY" => $dataY
  45. ));
  46.  
  47. //Trim your string for white spaces and for comma at the end
  48. $dataX=trim($dataX,",");
  49. $dataY=trim($dataY,",");
  50. ?>
  51. chart.js file
  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. }
Advertisement
Add Comment
Please, Sign In to add comment