Php 从MYSQL查询到google图表
让我首先说,我不知道如何在这个问题上提出正确的问题,但接下来 我有一个数额数据库,上面都附有时间。例如,四行看起来像:Php 从MYSQL查询到google图表,php,mysql,google-visualization,Php,Mysql,Google Visualization,让我首先说,我不知道如何在这个问题上提出正确的问题,但接下来 我有一个数额数据库,上面都附有时间。例如,四行看起来像: 2 | 1000 | 2012-11-01 12:09:09 2 | 800 | 2012-11-01 12:10:21 10 | 900 | 2012-11-01 12:11:36 10 | 750 | 2012-11-01 12:12:46 第一列是用户。我想把它放在谷歌的折线图上,但在如何设置查询上真的很费劲 javascript数组中的最终结果需要如下所示:
2 | 1000 | 2012-11-01 12:09:09
2 | 800 | 2012-11-01 12:10:21
10 | 900 | 2012-11-01 12:11:36
10 | 750 | 2012-11-01 12:12:46
第一列是用户。我想把它放在谷歌的折线图上,但在如何设置查询上真的很费劲
javascript数组中的最终结果需要如下所示:
data.addColumn('string', 'Date');
data.addColumn('number', 'User 2');
data.addColumn('number', 'User 10');
data.addRows([
['12:09', 1000, null],
['12:10', 800, null],
['12:11', 800, 900],
['12:12', 800, 750]
]);
在这方面,任何帮助或指导都是非常受欢迎的。我正在考虑一些php循环,但有点卡住了…将此放在文档顶部:
<?php
$dsn = 'mysql:dbname=myDbName;host=127.0.0.1';
$user = 'dbUserName';
$password = 'dbPassword';
$pdo = new PDO($dsn, $user, $name);
$result = $pdo->query('select * from YourAmountsTableName');
foreach ($result as $row) {
$rows[] = "['{$row['time']}',{$row['ammount']},{$row['yourThirdValue']}]";
}
$rowsString = implode(',',$rows);
?>
]);
调整名称、密码等的代码。我没有测试代码,所以请检查是否没有引号丢失或其他拼写错误。至于谷歌图表,
有很多很好的例子感谢PiotrN的回复,有一件事我可能应该提到,可能有1个用户或1000个用户,这不是固定的只有2个。所以这些列不是固定的。此外,没有第三个数量,这是从数据库中的下一行获取的。它将合并任意多个结果,而不仅仅限于2个。用户是成排的,不是串通的,还是我遗漏了什么?如果您需要聚合用户数据,请在SQL中这样做,合并其他表中的列也是如此。用户必须在列中,google图表才能工作。如果每一行都沿着这条线走,那就好了。对于一行,将是['date'、'user1 amount'、'user2 amount']
data.addRows([<?php echo $rowsString; ?>]);