Avatar billede warberg Juniormester
02. april 2014 - 12:40 Der er 1 løsning

Google Charts og mySQL

Jeg skal hente data ind fra mySQL-db i følgende forsøg på at lave et diagram i Google Charts


<html>
  <head>
    <script type="text/javascript" src="https://www.google.com/jsapi"></script>
    <script type="text/javascript">
      google.load("visualization", "1", {packages:["corechart"]});
      google.setOnLoadCallback(drawChart);
      function drawChart() {
        var data = google.visualization.arrayToDataTable([
          ['Kampe', 'Resultat'],
          ['Vundet',    8],
          ['Uafgjort',      5],
          ['Tabt',      11]
        ]);

        var options = {
          title: 'Sæsonen',
          pieHole: 0.4,
        };

        var chart = new google.visualization.PieChart(document.getElementById('donutchart'));
        chart.draw(data, options);
      }
    </script>
  </head>
  <body>
    <div id="donutchart" style="width: 300px; height: 200px;"></div>
  </body>
</html>



Det er altså data i
var data = google.visualization.arrayToDataTable
jeg gerne vil hente fra følgende kald:

SELECT

COUNT(*) AS kampe,
SUM(points=3) AS vundet,
SUM(points=1) AS uafgjort,
SUM(points=0) AS tabt

FROM kampe


Men hvordan strikker jeg det sammen?
Avatar billede HBP2 Praktikant
05. april 2014 - 16:50 #1
Hvad med:

$q = "SELECT COUNT(*) AS kampe ....";
// læs fra DB - du har vel allerede en funktion til det
$res = query($q);
$vundet = $res['vundet'];
$uafgjort = $res['uafgjort'];
$tabt = $res['tabt'];

// opbyg data til google charts
$gc = array();
$gc[] = array('Kampe','Resultat');
$gc[] = array('Vundet', $vundet);
$gc[] = array('Uafgjort', $uafgjort);
$gc[] = array('Tabt', $tabt);

// lav om til JSON
$gc = json_encode($gc);

// indsæt $gc i javascript istedet for den nuværende parameter til  arrayToDataTable()
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester