javascript - 在 MySQL 数据库中显示行的计数结果并在 ChartJs 中显示
问题描述
我想在 MySQL 数据库中显示记录的行数并在 ChartJs 中显示数字,但从我的 PHP 脚本中获得的数字似乎没有正确显示。
用于从 MySQL 数据库中计数记录的 PHP 代码段 (Users_Retrieval.php)
$JSON_Response = array();
//Counts the number of Reporters
$Reporter_Query = "SELECT User_ID FROM User WHERE User_Type = 0";
$Count_Reporter = mysqli_query($Connection, $Reporter_Query);
$Reporter_Total = mysqli_num_rows($Count_Reporter);
array_push($JSON_Response, $Reporter_Total);
//Counts the number of Firefighters
$Firefighter_Query = "SELECT User_ID FROM User WHERE User_Type = 1";
$Count_Firefighter = mysqli_query($Connection, $Firefighter_Query);
$Firefighter_Total = mysqli_num_rows($Count_Firefighter);
array_push($JSON_Response, $Firefighter_Total);
echo json_encode($JSON_Response);
当我打印 json_encode 的内容时,它会打印出我期望的值,我认为我的 PHP 脚本没有问题。 json_encode 的输出:[5,1]
JavaScript ChartJs 代码
//Reporter_Result and Firefighter_Result is both initialized in 1. It will
//be changed once the retrieval of JSON is correct
var Reporter_Result = 1;
var Firefighter_Result = 1;
$.ajax({
url: "Users.php",
method: "GET",
success: function(response){
//alert(response);
var User = JSON.parse(response);
var Reporter_Result = text(User.reporter);
var Firefighter_Result = text(User.firefighter);
}
});
var myPieChart = new Chart(ctx, {
type: 'pie',
data: {
labels: ["Reporters", "Firefighters"],
datasets: [{
data: [Reporter_Result, Firefighter_Result],
backgroundColor: ['#007bff', '#dc3545'],
}],
},
});
我认为问题出在我的 javascript 文件中,它没有从我的Users_Retrieval.php正确接收到[5,1]的值(我的理论)以及我尝试在我的 javascript 中访问 JSON 值的方式。
这是我当前的饼图进度/输出,我将在其中插入结果:
问题:
如何从我的 Users_Retrieval.php 中的 JSON 获取值?我在我的 javascript 中接收 JSON 值的实现是错误的吗?如何正确获取它们以便将值插入我的饼图中?
解决方案
好吧,如果是我,我很想从这里开始:
SELECT User_Type
, COUNT(*) total
FROM User
GROUP
BY User_Type;
推荐阅读
- javascript - 未捕获的类型错误:没有“新”就无法调用类构造函数 Hero
- .net - 如何修复 IdentityServer ReactJS 的路由
- python - 在 Maya 中,如何使用 Python 切换“忽略隐藏在大纲中”标志?
- google-apps-script - 如何循环浏览 Google 表格中的单列日期,然后根据日期发送电子邮件
- sql - 查找每天至少提交一次的唯一黑客总数,并查找每天提交最多次数的hacker_id
- c# - 如何在泛型方法中使用 Nullable 变量
- c# - 可空引用类型意外 CS8629 可空值类型可能为带有临时变量的空
- java - 实现 EventProcessingConfigurer,registerErrorHandler 以正确处理 @EventHandler 错误
- java - 将数据从活动传递到选项卡片段
- javascript - Nuxt.js 应用程序在重新加载后不使用 asyncData 获取数据