0
我与来自csv数据的Highcharts混淆。从php生成的CSV生成Highcharts
$.getJSON('http://www.highcharts.com/samples/data/jsonp.php?filename=analytics.csv&callback=?', function (csv) { })
它可以读取csv文件,但是当我这样设置URL,它不工作
$.getJSON(baseurl+'webtools/analytics/submissions_data', function (csv) {
console.log(csv);
});
我的服务器端代码:
function submissions_data() {
header('Content-Type: text/csv; charset=utf-8');
$qry = "SELECT DATE(created_date) dateonly, COUNT(id) AS total FROM mf_story GROUP BY dateonly ORDER BY dateonly ASC;";
$rows = $this->db->query($qry)->result_array();
$output = fopen('php://output', 'w');
$column = array("Day","Submissions");
fputcsv($output, $column);
foreach($rows as $data){
$date = DateTime::createFromFormat('Y-m-d', $data['dateonly']);
$data['dateonly'] = $date->format('n/d/Y');
fputcsv($output, $data);
}
}
而且我用$ .ajax实验
$.ajax({
url:baseurl+'webtools/analytics/submissions_data',
type: 'get',
dataType: 'jsonp',
success: function(data) {
console.log("data read");
},
error: function(jqXHR, textStatus, errorThrow){
console.log(jqXHR['responseText']); //the csv printed here
}
令人惊讶的是,我的csv打印错误功能。任何想法为什么?我应该怎么做才能解决它?把我的highcharts代码放在错误函数中有点难看。
1)你是什么意思完全相同通过“不工作”? 2)您是否验证过构建的URL的准确性(baseurl +'webtools/analytics/submissions_data')?什么返回? 3)如果你有一个csv文件,“jsonp”似乎不是正确的数据类型。 4)“为什么?”和“我该如何解决它?”需要更具体的细节来处理... – jlbriggs
@jlbriggs 1)来自highcharts的样本使用csv对不对?当我将url更改为我自己的csv-generated时,在控制台中,没有打印任何内容。 2)是的,它有效的网址。 4)我需要服务器端的帮助,因为我可以从http://www.highcharts.com/samples/data/jsonp.php?filename=analytics.csv&callback=中成功获取csv。但在使用我的服务器端时失败。 –
删除该行:'dataType:'jsonp','你没有使用'jsonp'格式..这是你唯一没有回答的问题(#3),这就是你在错误中看到数据的罪魁祸首()'方法。 –