如何将从数据库中提取的数字传递到javascript数据部分?
我正在尝试创建一个条形图。我使用了在github上找到的一些库来实现这一点。但是现在我很难将从DB中提取的变量(只是一些数字)传递到javascript的数据部分。如果有人能给我一些建议或帮助,那就太好了如何将从数据库中提取的数字传递到javascript数据部分?,javascript,php,html,mysql,Javascript,Php,Html,Mysql,我正在尝试创建一个条形图。我使用了在github上找到的一些库来实现这一点。但是现在我很难将从DB中提取的变量(只是一些数字)传递到javascript的数据部分。如果有人能给我一些建议或帮助,那就太好了 <!DOCTYPE html> <html lang="en"> <head> <script src="Chart.js"></script> <meta charse
<!DOCTYPE html>
<html lang="en">
<head>
<script src="Chart.js"></script>
<meta charset="utf-8" />
<title>index</title>
</head>
<body>
<h1>Sales for last three months </h1>
<?php
require("files/connect.php");
$queryJan = "SELECT sales_records FROM games WHERE sale_month='Jan'";
$queryFeb = "SELECT sales_records FROM games WHERE sale_month='Feb'";
$queryMar = "SELECT sales_records FROM games WHERE sale_month='Mar'";
$Jan = mysqli_query($connection,$queryJan) or die(mysqli_error($connection));
$Feb = mysqli_query($connection,$queryFeb) or die(mysqli_error($connection));
$Mar = mysqli_query($connection,$queryMar) or die(mysqli_error($connection));
//Information I want to pass to the javascript.
$JanArray = mysqli_fetch_array($Jan);
$FebArray = mysqli_fetch_array($Feb);
$MarArray = mysqli_fetch_array($Mar);
?>
<canvas id="canvas" height="450" width="600"></canvas>
<canvas id="canvas" height="450" width="600"></canvas>
<script>
var barChartData = {
labels : ["January","February","March"],
datasets : [
{
fillColor : "rgba(220,220,220,0.5)",
strokeColor : "rgba(220,220,220,1)",
data : []
//I want to put the information in here and it will create a bar chart
},
{
fillColor : "rgba(151,187,205,0.5)",
strokeColor : "rgba(151,187,205,1)",
data : []
},
{
fillColor : "rgba(151,187,205,0.5)",
strokeColor : "rgba(151,187,205,1)",
data : []
}
]
}
var myLine = new Chart(document.getElementById("canvas").getContext("2d")).Bar(barChartData);
</script>
</body>
</html>
指数
过去三个月的销售额
只需让php将数组作为json进行回显
data : <?php echo json_encode($JanArray); ?>
数据:
行了
编辑:
您将需要获得这样的数据
<?php
...
$JanArray = array();
while($row = mysqli_fetch_array($Jan)) {
$JanArray[] = $row[0]; // this fetches the data of the first column
}
?>
只需让php将数组作为json进行回显
data : <?php echo json_encode($JanArray); ?>
数据:
行了
编辑:
您将需要获得这样的数据
<?php
...
$JanArray = array();
while($row = mysqli_fetch_array($Jan)) {
$JanArray[] = $row[0]; // this fetches the data of the first column
}
?>
不要混合使用mysqli.*
和mysql.*
函数!三个单独的查询可以轻松地作为一个查询运行?哎哟……我知道我没有太多时间,我只需要快速完成。不要混合使用mysqli\u*
和mysql\u*
函数!三个单独的查询可以轻松地作为一个查询运行?哎哟…我知道我没有太多时间,我只需要快点。干杯,我来试试。实际上,你需要重新格式化你的数组,因为它将包含列名。看我的编辑…非常感谢Michael。当我回到家的时候,我会试一试。JSON意味着在你使用它之前要被解析。类似这样会更好一些:data:JSON.parse(“”)
@maček胡说八道。JSON是JavaScript语言的一个子集,您可以安全地将它回送到JavaScript,解释器将相应地使用它。干杯,我来试试。实际上,您需要重新格式化数组,因为它将包含列名。看我的编辑…非常感谢Michael。当我回到家的时候,我会试一试。JSON意味着在你使用它之前要被解析。类似这样会更好一些:data:JSON.parse(“”)
@maček胡说八道。JSON是JavaScript语言的一个子集,您可以安全地echo
它到JavaScript,解释器将相应地使用它。