Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][PHP]google charts
Forum PHP.pl > Forum > Przedszkole
eminiasty
Problem w tym, iż chciałem stworzyć kilka wykresów na podstawie google charts, kiedyś mi to działało ale chyba zmienił się system inicalizacji wykresów. Podmieniłem więc biblioteke js i chce by wykresy pojawily sie an ekranie, lecz zawsze pojawia sie tylko pierwszy. Dlaczego?
Ten drugi jest pod spodem (gdy kasuje ten pierwszy dziala drugi). Chce by byly dwa lub wiecej jednoczesnie.. Czy wgl jest to jeszczcze mozliwe?

BODY
  1. echo' <div id="chart1"><div>';
  2. echo' <div id="chart2"><div>';


JS
  1. <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>


  1. <?php
  2. $query1 ="SELECT ".$prefix."categories.categories_name, COUNT(".$prefix."categories.categories_name) as count FROM ".$prefix."news LEFT JOIN ".$prefix."newscategories ON ".$prefix."news.news_id = ".$prefix."newscategories.news_id LEFT JOIN ".$prefix."categories ON ".$prefix."categories.categories_id = ".$prefix."newscategories.categories_id GROUP BY ".$prefix."categories.categories_id
  3. ";
  4. $result1= mysqli_query($link,$query1) or die(mysqli_error());
  5.  
  6. ?>
  7. <script type="text/javascript">
  8. //WYKRES NR1
  9. google.charts.load("visualization", "1", {'packages':['corechart']});
  10. google.charts.setOnLoadCallback(drawChart);
  11. function drawChart() {
  12.  
  13. // Create the data table.
  14. var data = new google.visualization.DataTable();
  15. data.addColumn('string', 'Topping');
  16. data.addColumn('number', 'Slices');
  17. data.addRows([
  18.  
  19. <?php
  20. while($r1 = mysqli_fetch_assoc($result1)) {
  21. printf("['%s', %d],", $r1['categories_name'], $r1['count']);
  22. }
  23. ?>
  24.  
  25. ]);
  26.  
  27. var options = {'title':'Statystyka ogłoszeń',
  28. 'width':400,
  29. 'height':300};
  30.  
  31. var chart = new google.visualization.PieChart(document.getElementById('chart1'));
  32. chart.draw(data, options);
  33. }
  34. </script>
  35. <?php
  36. $query2 =" SELECT ".$prefix."rank.rank_name, COUNT(".$prefix."rank.rank_name) as count FROM ".$prefix."users LEFT JOIN ".$prefix."rank ON ".$prefix."rank.rank_id = ".$prefix."users.rank_id GROUP BY ".$prefix."rank.rank_id
  37. ";
  38. $result2= mysqli_query($link,$query2) or die(mysqli_error());
  39.  
  40. ?>







  1. <script type="text/javascript">
  2. //WYKRES NR2
  3. google.load('visualization', '1.0', {'packages':['corechart']});
  4.  
  5. // Set a callback to run when the Google Visualization API is loaded.
  6. google.setOnLoadCallback(drawChart);
  7. function drawChart() {
  8.  
  9. // Create the data table.
  10. var data = new google.visualization.DataTable();
  11. data.addColumn('string', 'Topping');
  12. data.addColumn('number', 'Slices');
  13. data.addRows([
  14.  
  15. <?php
  16. while($r2 = mysqli_fetch_assoc($result2)) {
  17. printf("['%s', %d],", $r2['rank_name'], $r2['count']);
  18. }
  19. ?>
  20.  
  21. ]);
  22.  
  23. var options = {'title':'Statystyka użytkowników',
  24. 'width':400,
  25. 'height':300};
  26.  
  27. var chart = new google.visualization.PieChart(document.getElementById('chart2'));
  28. chart.draw(data, options);
  29. }
  30.  
  31.  
  32. </script>
trueblue
A coś się pojawia w konsoli przeglądarki?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.