我在使用AJAX在客户端获取价值以使用flot实时绘制图表时遇到问题。
我正在使用flot库的一个代码示例:realtime。
http://www.flotcharts.org/flot/examples/realtime/
此示例的值是使用javascript在客户端本地生成的。但我想从服务器端获取值,所以我必须使用ajax重用示例代码。
var data = [],
totalPoints = 10;
var y;
function getRandomData() {
if (datagraph.length > 0)
datagraph = datagraph.slice(1);
// Do a random walk
while (datagraph.length < totalPoints) {
$.ajax({
url: 'request.php',
type: "POST",
dataType: "text",
cache: false,
success: function(data) {
y = data;
console.log("ajax: " + y);
},
});
datagraph.push(y);
}
// Zip the generated y values with the x values
var res = [];
for (var i = 0; i < datagraph.length; ++i) {
res.push([i, datagraph[i]])
}
return res;
}
我必须将request.php中返回的值传递给上面html代码中javascript里面的函数getradomData()的变量y。
注意:request.php调用一个函数:getVoltage()返回一个值。我在request.php上回应了这个值。另外,成功的console.log不会返回任何内容。
Ajax部分出了什么问题?
里卡多
编辑: redirect.php
<?php
include('database.php');
echo getVoltage();
?>
函数getVoltage返回一个类似176的值,并且它的工作正常。如果我回显该值,我可以看到该值。 getVoltage()是一个连接到mysql数据库并读取该数据库的最新值的函数。
编辑:将回声字符串转换为int后,它现在正常工作。