【发布时间】:2016-12-13 17:33:19
【问题描述】:
此时我正在为一个自主植物箱编写一个基于网络的用户界面(没有犯罪行为:))
我们有一个基于 SPS 的控制器,它定期将温度和湿度数据记录到 SQL 数据库中。
我编写了一个小的 PHP 脚本,它检索一些最近的行并将其作为数组返回给我。到目前为止一切顺利,我还没有能够使用$.getJSON() 将这些数据输入到我的 HTML 页面中。我知道这已经过时了,我最好使用 ajax 函数,但目前这不是问题。
我的 PHP 脚本返回一个 JSON 格式的数组:
[
{"id":"321","datum":"12.12.2016","time":"19:12","temp_innen":"19.8","feucht_innen":"51.7"},
{"id":"322","datum":"12.12.2016","time":"19:22","temp_innen":"19.8","feucht_innen":"51.7"},
{"id":"323","datum":"12.12.2016","time":"19:32","temp_innen":"19.8","feucht_innen":"51.7"},
{"id":"324","datum":"12.12.2016","time":"19:42","temp_innen":"19.8","feucht_innen":"51.7"},
{"id":"325","datum":"12.12.2016","time":"19:52","temp_innen":"19.8","feucht_innen":"51.6"},
{"id":"326","datum":"12.12.2016","time":"20:02","temp_innen":"19.8","feucht_innen":"51.6"},
{"id":"327","datum":"12.12.2016","time":"20:12","temp_innen":"19.8","feucht_innen":"51.5"},
{"id":"328","datum":"12.12.2016","time":"20:22","temp_innen":"19.8","feucht_innen":"51.6"},
{"id":"329","datum":"12.12.2016","time":"20:32","temp_innen":"19.8","feucht_innen":"51.4"},
{"id":"330","datum":"12.12.2016","time":"20:42","temp_innen":"19.8","feucht_innen":"51.4"},
{"id":"331","datum":"12.12.2016","time":"20:52","temp_innen":"19.8","feucht_innen":"51.4"},
{"id":"332","datum":"12.12.2016","time":"21:02","temp_innen":"19.8","feucht_innen":"51.4"}
]
现在我只想将一些列提取到单个数组中。它应该是这样的:
每一列,即标签“基准”应该在一个数组中,每个“时间”标签等等。
目标是制作一个chartjs折线图,显示固定时间的温度和湿度。
到目前为止我已经尝试过:
$.getJSON( "/php/logabfrage.php", function(data) {
var Datum = [], Zeit = [], Temp = [], Hum = [];
$.each(data, function(index, value) {
Datum.push(new Date(data.datum));
Zeit.push(new Date(data.zeit));
Temp.push(parseFloat(data.temp_innen));
Hum.push(parseFloat(data.feucht_innen));
});
});
但这并没有得到我想要的结果。也许有人可以帮助我或将我带到正确答案的问题这里,因为我没有在互联网上找到与我的问题类似的东西。
最后应该是这样的:
var date = [date1, date2, ..., dateN];
var temp = [temp1, temp2, ..., tempN];
等等。
【问题讨论】:
-
仅供参考
$.getJSON()是一个 Ajax 函数。 -
data.datum什么...data是一个数组... -
你只写
but this doesnt get me the result i want.但不清楚想要的结果是什么。请说明您期望它的外观以及这与您当前的结果有何不同。 -
var Date [1: date1, 2: date2,..., n: date n]- 这不是一个有效的数组,但最好构造一个像var dateItems = [date1, date2,..., date n]这样的普通数组 -
在
each中使用value.datum而不是data.datum