• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 421
  • Last Modified:

Can not view Google Column Chart on webpage

Hi all.

I have the following files that I want to use to display a column chart on my website. Unfortunately, the code below is simply displaying a blank page. Do I have something wrong in the code that is not displaying the column chart?

ChartTest2.html:
<html>
  <head>
    <!--Load the AJAX API-->
    <meta content="text/html;charset=utf-8" http-equiv="Content-Type" />
    <meta content="utf-8" http-equiv="encoding" />
    <script type="text/javascript" src="https://www.google.com/jsapi"></script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
    <script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
 google.setOnLoadCallback(drawChart1);

 function drawChart1() {
  var jsonData1 = $.ajax({
          url: "GetChartData1.php",
          dataType:"json",
          async: false
          }).responseText;
        
        // Create our data table out of JSON data loaded from server
        var data = new google.visualization.DataTable(jsonData1);
  var options = {'title':'Super Workload',
                       'width':900,
                       'height':500};

        // Instantiate and draw our chart, passing in some options.
        var chart = new google.visualization.ColumnChart(document.getElementById('chart_div1'));
        chart.draw(data, options);
        
      
      }

    </script>
  </head>

  <body>
 <div id="chart_div1"></div> 
   
  </body>
</html>

Open in new window


GetChartData1.php:
<?php 
// First we execute our common code to connection to the database and start the session 
require("common.php"); 

    $smt = $db->prepare('SELECT Count(Type) as Count, firstname FROM FieldSuperDataEntry INNER JOIN Users ON DataEntry.UserID = Users.userid Group By firstname')
    $smt->execute(); 
    $data = $smt->fetchAll(); 
    
  $rows = array();
  $table = array();
  $table['cols'] = array(
    array('label' => 'firstname', 'type' => 'string'),
    array('label' => 'Count', 'type' => 'number')
  
);

foreach($data as $row) {
      $temp = array();
      $temp[] = array('v' => (string) $row['firstname']); 
      $temp[] = array('v' => (int) $row['Count']); 
 
      $rows[] = array('c' => $temp);
    }

$table['rows'] = $rows;
$jsonTable = json_encode($table);
echo $jsonTable;
?>

Open in new window


Thank you in advance.
0
Sim1980
Asked:
Sim1980
1 Solution
 
leakim971PluritechnicianCommented:
open the page GetChartData1.php directly in your brozser with the full URL of course and post what you get
0
 
Sim1980Author Commented:
Thanks! I did what you suggested and the output was an error, I misspelled a field in the sql statement.

I'm going to post another question because I want to be able to show 2 counts and a sum, so it would be 3 bar graphs per user.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now