我对如何编写PHP没有任何线索,但我监督的其中一个网站使用它。我想要一个根据当前数据自动更新的饼图。我知道如何编写将绘制图表的HTML,但不知道如何让我的MySQL语句与数据交互。这是我要运行的代码片段:
SELECT
pc.shortname Name,
Count(qa.factor) Count
FROM
stable_host pc,
stable_area pq,
stable_area_front qa
WHERE
pc.id = pq.host
AND pq.id = qa.area
AND ((pq.name='Signal1') OR (pq.name='Signal5'))
GROUP BY pc.shortname
ORDER BY pc.shortname
当我运行此脚本时,它会给我以下输出:
Category1 62
Category2 53
Category3 35
Category4 38
我的问题是:如何获取输出,只显示数字,逗号分隔? (例如:“62,53,35,38”)
答案 0 :(得分:2)
SELECT GROUP_CONCAT(count(qa.factor) SEPARATOR ',') count
我相信这就是你所要求的。
答案 1 :(得分:0)
您可以使用:
<?php
$dsn = '';
$username = '';
$password = '';
$query = "Paste your query here";
try {
$pdo = new PDO($dsn, $username, $password);
$pdo->prepare($query);
} catch(PDOException $e) {
die("Could not connect to the database\n");
}
$results = $pdo->fetchAll();
if(count($results) > 0) {
$array = array();
foreach($queryResult as $row) {
$array[] = $row['Count'];
}
$commaDelimitedString = implode(',',$array);
} // No need for end PHP tag, they cause problems.
此: - 连接数据库(或尝试) - 运行您的查询 - 制作一个空数组 - 循环结果 - 获取“Count”列并将其添加到数组的末尾 - 将数组压缩为逗号分隔的字符串。
请看这里(http://wezfurlong.org/blog/2004/may/first-steps-with-pdo/和http://www.electrictoolbox.com/php-pdo-bound-placeholders/)获取有关PDO使用的一些指导以及您需要的内容连接到数据库(显然不要发布这些细节)
这可能看起来令人生畏,但一次只能迈出一步。如果您有更多问题,请询问。