Chart.js 和 PHP
2014-02-04
18856
我正在使用 Chart.js 在我的网站上创建图表。数据需要来自数据库,因此 PHP 需要位于 javascript 内部。
这是我所拥有的:(因为只是测试,而不是数据库部分)
<?php
$set1 = 20;
$set2 = 30;
$set3 = 40;
?>
然后创建饼图我有:
var pieData = [
{
value: <?php echo $set1; ?>,
color:"#F38630"
},
{
value : <?php echo $set2; ?>,
color : "#E0E4CC"
},
{
value : <?php echo $set3; ?>,
color : "#69D2E7"
}
];
var myPie = new Chart(document.getElementById("canvas").getContext("2d")).Pie(pieData);
使用此代码我收到此错误:
Uncaught SyntaxError: Unexpected token < when it reached the first <?php call.
3个回答
我猜你是在 .js 文件中执行此操作。我猜你的网络服务器没有解释 php 代码。相反,它将其作为静态 javascript 代码提供。
在 .php 文件中的
<script></script>
中执行此操作。
如果你不想将变量逐个传递给 javascript:
将其作为
json
传递。
可以在此处找到示例:
Langusten Gustel
2014-02-04
创建颜色数组 并将 $row 传递到 foreach 循环中,就像这样。
foreach($row as $key=>$value)
{
$data[$key]['value']=(int)$value['id'];
$data[$key]['color'] = $color[$key];
}
然后将数据转换为 json,就像这样
var Data = <?php echo json_encode($dataArr['data']); ?>;
Vaibhav
2015-01-09
这很有帮助!
我刚刚将我的 HTML 文档更改为 PHP,然后它就起作用了!
我是代码开发方面的新手,但我对 MySQL cx 的提示是这样的。
查询:
<?php
session_start();
include_once "con.php"; #my conex in another doc
$query= "SELECT * FROM data ORDER BY id";
$result= mysql_query($query);
#For a simple first look, or rookies like me... I show the query result w/ an echo.
while ($row= mysql_fetch_assoc($result)){
echo $row['id'] . ' | ' . $row['mes'] . ' | ' . $row['valor1'] . ' % | ' . $row['valor2'] . ' % | ' . $row['valor3']. ' %' ."\n";
#This is what we need: I put data from my query in $setx, and then I use user3271851's code... it works!
$set1= $row['valor1'];
$set2= $row['valor2'];
$set3= $row['valor3'];
}
?>
对于图表,就像帖子一样:
var pieData = [
{
value: <?php echo $set1; ?>,
color:"#F38630"
},
{
value : <?php echo $set2; ?>,
color : "#E0E4CC"
},
{
value : <?php echo $set3; ?>,
color : "#69D2E7"
}
];
var myPie = new Chart(document.getElementById("canvas").getContext("2d")).Pie(pieData);
附注:抱歉,我的英语一点都不好。:)
enrigama
2014-05-18