के साथ हाइचार्ट्स डेटा श्रृंखला समस्या यह मेरा पहला अनुरोध है, और मैंने इस मुद्दे पर कई अन्य संबंधित पोस्ट पढ़ी हैं, लेकिन मैं अभी भी अपने wits अंत में अटक गया हूं इस पर ... तो किसी भी मदद की बहुत सराहना की है!AJAX/JSON और PHP
मुझे निम्नलिखित हाइचार्ट्स ऑब्जेक्ट पेज 1.php पर मिला है, और मैं पृष्ठ लोड पर पृष्ठ 2.php से डेटा प्राप्त करने के साथ ही ड्रॉपडाउन विकल्प बदलने पर AJAX का उपयोग कर रहा हूं।
(पढ़ने में आसानी के लिए छोटा कर दिया):
$(document).ready(function() {
var e = document.getElementById("selOption"); //<--- This is the dropdown
var domText = e.options[0].text;
var domID = e.options[e.selectedIndex].value;
var options = {
chart: {
renderTo: 'linechart',
type: 'line'
},
title: {
text: 'Title for ' + domText
},
subtitle: {
text: ''
},
xAxis: {
type: 'datetime',
dateTimeLabelFormats: {
month: '%b %e, %Y',
year: '%Y'
}
},
yAxis: {
title: {
text: 'Important Values'
},
reversed: true,
min: 0,
max: 100
},
tooltip: {
formatter: function() {
return '<b>'+ this.series.name +'</b><br/>'+
Highcharts.dateFormat('%b %e', this.x) +': '+ this.y;
}
},
series: []
};
$.get('Page2.php?domID=' + domID,function(data) {
$.each(data, function(key,value) {
//var series = {};
//series.name.push(value);
//series.data.push([value]);
options.series.push(data);
//alert(data);
});
var linechart = new Highcharts.Chart(options);
});
});
Page2.php है json वापस भेजने के बाद:
$sqlSelect = "SELECT Item1,Item2,Item3 FROM... ";
$result = mysql_query($sqlSelect);
while ($item = mysql_fetch_assoc($result)) {
$name = $item['Item1'];
$date = str_replace("-",",",$item['Item2']);
$pos = $item['Item3'];
$arr = array("name"=>$name,"data"=>"[Date.UTC(".$date."), ".$pos." ],");
echo json_encode($arr);
}
मेरे json वापसी इस तरह दिखता है:
{"name":"Item1","data":"[Date.UTC(2011,11,08), 4 ],"}
{"name":"Item1","data":"[Date.UTC(2011,11,08), 2 ],"}
जब मेरा चार्ट लोड होता है, तो यह नीचे 135 सीरीज़ नामों (?!?!?!) में भर जाता है और यह बिंदुओं को दिखाने के लिए प्रतीत नहीं होता है रेखा ग्राफ।
अगर मैं दोहरे उद्धरण चिह्नों और हार्ड कोड श्रृंखला सरणी में परिणाम निकालने के लिए, यह बहुत अच्छा काम करता है (हालांकि मैंने देखा उदाहरण वस्तुओं के बीच एक अल्पविराम है प्रतीत नहीं होता है।
सभी की मदद के लिए धन्यवाद ... विशेष रूप से त्वरित उत्तर! ;-)
मैं अपने $ कि खोज की है।प्रत्येक अनुभाग 135 या तो "श्रृंखला" बना रहा है क्योंकि मेरी प्रतिक्रिया स्ट्रिंग में कई वर्ण हैं। तो किसी भी तरह $ .each स्ट्रिंग में प्रत्येक वर्ण के लिए एक नई डेटा ऑब्जेक्ट बना रहा है। क्या मुझे किसी भी तरह JSON पार्स करना चाहिए? मैं सिर्फ PHP में अपने आउटपुट को प्रारूपित करने के लिए तैयार हूं और इसे एक सत्र चर में डालता हूं! – gtr1971