【发布时间】:2016-05-25 21:40:20
【问题描述】:
我正在使用 PHP 服务器和使用 CPanel 的 SQL 数据库。
我正在使用 SQL 查询从数据库中检索值(数字)并将它们传递给单独的 javascript 文件。 为了实现这一点,我首先在一个单独的 PHP 文件上创建了一个查询,以获取信息:
文件名:SQLamountofusers.php
<?php
$query = sprintf("SELECT COUNT( * ) as c
FROM `applications`
JOIN `users` ON ( users.id = applications.id_m )
WHERE `cdate` > CURRENT_DATE -30");
$result = mysql_query($query);
$res = mysql_fetch_assoc($result);
echo json_encode($res[c]);
mysql_free_result($result);
?>
然后使用 AJAX 将回显的结果传递给 JS 文件:
文件名:canvas.js
$(document).ready( function() {
$(usersreport).click(function() {
$.ajax({
type: 'POST',
url: 'js/SQLamountofusers.php',
data: 'id=usersreport',
dataType: 'json',
cache: false,
success: function(result) {
var num = Number(result);
{ label: "Active", y: num},
{ label: "Inactive", y: 0 },
});
});
现在这是我想要实现但不知道如何实现的目标:
我想将两个值传递给 canvas.js 文件,一个是活动用户(需要从数据库中查询一个,上面已经写过),另一个是非活动用户(需要另一个查询) -那么如何将两个结果放入 JS 文件中呢?
我应该使用其他查询创建另一个单独的 PHP 文件还是有其他方法来实现它?
【问题讨论】:
-
我不确定我是否理解您的要求,但我最好的猜测是您想更新您的 SQL 以执行 GROUP BY 并返回每个组的计数。或者,您可以在 php 中执行两个查询以分别获取两个结果,或者甚至可以使用 UNION 进行单个查询。
-
如果需要,您还可以创建一个包含两个单独查询结果的数组。请注意,
$res[c]不是有效的 PHP。
标签: javascript php mysql sql-server