Google Görselleştirme Api + SQL

2 Cevap php

Ben bir MySQL Veritabanı bazı verilerin bir GViz oluşturmak istiyorum ve ben sorun yaşıyorum.

Burada kaynak şimdiye kadar:

<?php 
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error 
connecting to mysql'); 
mysql_select_db($dbname); 
$int_y_pos = -1; 
$int_y_step_small = 1; 
$sql = "SELECT * from table')"; 
$sql = mysql_query($sql); 
$rownum = mysql_num_rows($sql); 
?> 
<html> 
  <head> 
    <script type="text/javascript" src="http://www.google.com/jsapi"></ 
script> 
    <script type="text/javascript"> 
      google.load("visualization", "1", {packages: 
["table"]}); 
      google.setOnLoadCallback(drawData); 
      function drawTable() {
        var data = new google.visualization.DataTable(); 
        data.addColumn('string', 'column1'); 
        data.addColumn('string', 'column2'); 
<?php 
echo "     data.addRows($rownum);\n"; 
while($row = mysql_fetch_assoc($sql)) { 
        $int_y_pos += $int_y_step_small; 
        echo "     data.setValue(" . $int_y_pos . ", 0, new column1(" . 
$row['column1']  . "));\n"; 
        echo "     data.setValue(" . $int_y_pos . ", 0, new column2(" . 
$row['column2']  . "));\n";  
} 

?> 
  var table = new google.visualization.Table(document.getElementById('table_div'));
  table.draw(data, {showRowNumber: true});

  google.visualization.events.addListener(table, 'select', function() {
    var row = table.getSelection()[0].row;
    alert('You selected ' + data.getValue(row, 0));
  });
} 
 </script> 
  </head> 
  <body> 
    <div id="table_div" style="width: 940px; height: 240px;"></div> 
  </body> 
</html>

Önceki önceki entegrasyonların herhangi bir yardım veya örnekler harika olurdu.

Teşekkürler

Gareth

2 Cevap

well this worked for me: 1. set headers of for your table

<?php
    $dataTable = array(
    'cols' => array(
         // each column needs an entry here, like this:
         array('type' => 'string', 'label' => 'Col1'),
         array('type' => 'string', 'label' => 'Col2'),
         array('type' => 'string', 'label' => 'Col3')
    )
);

Sonra süre satırları ayarlamak

while($row = mysql_fetch_array($result)) {
     $dataTable['rows'][] = array(
     'c' => array(
            array('v' => $row['DB-col1']),
            array('v' => $row['DB-col2']),
            array('v' => $row['DB-col3'])
            )
     );

JSON kodlamak:

        $json = json_encode($dataTable);?>

Sonra konteyner yük ve tablo olarak görüntüler:

  function drawTable() {
    var data = new google.visualization.DataTable(<?php echo $json; ?>);
    var table = new google.visualization.Table(document.getElementById('your-div-id'));
    table.draw(data);
  }

Benim için işe yaramadı kim, senin harika bir senaryo için teşekkür ederiz ...

Ben bu gibi bakmak değişti.

    $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
mysql_select_db($dbname);
$int_y_pos = -1; 
$int_y_step_small = 1;
$sql = "SELECT * from cache"; 
$sql = mysql_query($sql);
$rownum = mysql_num_rows($sql);
?> 
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title>
      Google Visualization API Sample
    </title>
    <script type="text/javascript" src="http://www.google.com/jsapi"></script>
    <script type="text/javascript">
      google.load('visualization', '1', {packages: ['table']});
    </script>
    <script type="text/javascript">
    function drawVisualization() {
      // Create and populate the data table.
      var data = new google.visualization.DataTable();
        data.addColumn('string', 'col1');
        data.addColumn('string', 'col2');
<?php
echo "     data.addRows($rownum);\n";
while($row = mysql_fetch_assoc($sql)) {
        $int_y_pos += $int_y_step_small; 
        echo "     data.setCell(" . $int_y_pos . ", 0,'". $row['col1']  . "');\n"; 
        echo "     data.setCell(" . $int_y_pos . ", 1,'" . $row['col2']  . "');\n"; 
} 

?> 
 // Create and draw the visualization.
      visualization = new google.visualization.Table(document.getElementById('table'));
      visualization.draw(data, null);
    }


    google.setOnLoadCallback(drawVisualization);
    </script>
  </head>
  <body style="font-family: Arial;border: 0 none;">
    <div id="table"></div>                  
  </body>
</html>