jsonエンコードを介してdbからスコアを返すphpを作成しました。フロットはそれらを望んでいないようです。firebug で返されるエラーはありません。だから私は立ち往生しています。私が得るのは空白のチャートだけです-
コード..
<script type="text/javascript">
$(function() {
var options = {
bars: {
show: true
}
}
$.plot("#placeholder", data, options);
var iteration = 0;
function fetchData() {
++iteration;
function onDataReceived(series) {
data = [ series ];
$.plot("#placeholder", data, options);
}
$.ajax({
url: "http://localhost/charts/data",
type: "GET",
dataType: "json",
success: onDataReceived
});
if (iteration < 5) {
setTimeout(fetchData, 10000);
} else {
data = [];
alreadyFetched = {};
}
}
fetchData();
setTimeout(fetchData, 10000);
});
</script>
</head>
<body>
<div id="header">
<h2>AJAX</h2>
</div>
<div id="content">
<div class="demo-container">
<div id="placeholder" class="demo-placeholder"></div>
</div>
</div>
</body>
</html>
データを返すphpは
$data = array(array('1999',3.0),array('2000',3.9),array('2001',2.0),array('2002',1.2));
$array = array('label' => 'Scores','data'=>$data);
echo json_encode(array($array));
そして戻りJsonは
[{"label":"Scores","data":[["1999",3],["2000",3.9],["2001",2],["2002",1.2]]}]