我一直在尝试使用SELECT Count
从mysql数据库检索数据,因为我得到了一个国家/地区列表,我想计算每个国家/地区在列中显示的次数SovereignState
,到 Google Geo Chart通过浏览,我相信 json_encode 应该可以解决问题。
但是,我不知道如何从我的 php 代码中获取 json_encode
,然后将其放入图表的 DataTable
中。
这是 php 代码:
define('DB_NAME', '');
define('DB_USER', '');
define('DB_PASSWORD','');
define('DB_HOST', '');
$conn = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME) ;
if ($conn->connect_error) {
die ('Could not connect: ' . $conn->connect_error);
}
$sql = "SELECT SovereignState, COUNT(*) FROM Data_2 GROUP BY SovereignState";
echo $sql;
//$result = $conn->query($sql);
$result = $conn->multi_query($sql);
if(!$result) {
echo "Could not successdully run query ($sql) from DB: " . mysql_error(); exit;
}
echo "<pre>";
do {
if ($result = $conn->store_result()) {
while ($row = $result->fetch_row()) {
printf("%s - %s\n", $row[0], $row[1]);
}
$result->free();
}
} while ($conn->more_results());
echo "</pre>";
$conn->close();
这是 google geochart 的 html 代码:
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["geochart"]});
google.setOnLoadCallback(drawRegionsMap);
function drawRegionsMap() {
var data = google.visualization.arrayToDataTable([
['Country', 'Number'],
]);
var options = {};
var chart = new google.visualization.GeoChart(document.getElementById('regions_div'));
chart.draw(data, options);
}
</script>
最佳答案
您可以使用json_encode()
从您的 PHP 代码中获取 JSON 并使用 Ajax 将 JSON 获取到您的 JS 代码中。
此外,(不推荐)您可以使用 <?php myFunction();?>
从 JS 代码调用 PHP 函数。 ,该函数应该返回 echo json_encode()
.
关于javascript - SELECT Count 从 mysql 到 Google Geo Chart,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32058741/