无法使用ajax拉出oci数组以与ChartJs一起使用

时间:2018-02-01 13:29:10

标签: php jquery ajax chart.js oci

我尝试使用ChartJs并从我们的Oracle数据库中提取数据。我尽可能地遵循文档并尝试将它们用于我的oci输出,但我似乎无法获取数据。这是我从data.php获取的数据:

oci_execute($query);
$data = array();
while($row = oci_fetch_array($query, OCI_ASSOC)) {
  $data[] = $row;
}
print json_encode($data);

哪个输出:

[{"DT":"01-FEB-18","SHIFTS":"FIRST","TOTAL":"6","IP":"5","DOMESTIC":"2","P_RICO":"3","EXPORTS":"1"},{"DT":"31-JAN-18","SHIFTS":"SECOND","TOTAL":"66","DOMESTIC":"49","P_RICO":"4","EXPORTS":"13"},{"DT":"31-JAN-18","SHIFTS":"FIRST","TOTAL":"55","DOMESTIC":"30","P_RICO":"1","EXPORTS":"24"},{"DT":"30-JAN-18","SHIFTS":"SECOND","TOTAL":"52","DOMESTIC":"34","P_RICO":"10","EXPORTS":"8"},{"DT":"30-JAN-18","SHIFTS":"FIRST","TOTAL":"69","DOMESTIC":"55","P_RICO":"2","EXPORTS":"12"},{"DT":"29-JAN-18","SHIFTS":"SECOND","TOTAL":"61","DOMESTIC":"41","P_RICO":"10","EXPORTS":"10"},{"DT":"29-JAN-18","SHIFTS":"FIRST","TOTAL":"48","DOMESTIC":"43","P_RICO":"2","EXPORTS":"3"},{"DT":"28-JAN-18","SHIFTS":"SECOND","TOTAL":"53","DOMESTIC":"44","P_RICO":"1","EXPORTS":"8"},{"DT":"28-JAN-18","SHIFTS":"FIRST","TOTAL":"53","DOMESTIC":"43","P_RICO":"3","EXPORTS":"7"}]

我关注的PHP变量是DT,SHIFTS和TOTAL。在我的index.php上,我有这个ajax调用来获取变量:

$.ajax({
        url: "data.php",
        method: "GET",
        success: function(data) {
            console.log(data);
            var shifts = [];
            var total = [];
            var dt = [];

            for(var i in data) {
                shifts.push("Shift " + data[i].SHIFTS);
                total.push(data[i].TOTAL);
                dt.push(data[i].DT);
            }

            var chartdata = {
        labels: shifts,
                datasets : [
                    {
                        label: 'Shipments Complete',
                        backgroundColor: 'rgba(200, 200, 200, 0.75)',
                        borderColor: 'rgba(200, 200, 200, 0.75)',
                        hoverBackgroundColor: 'rgba(200, 200, 200, 1)',
                        hoverBorderColor: 'rgba(200, 200, 200, 1)',
                        data: total
                    }
                ]
            };

            var ctx = $("#ships");

            var barGraph = new Chart(ctx, {
                type: 'bar',
                data: chartdata
            });
        },
        error: function(data) {
            console.log(data);
        }
    });

当我运行index.php时,它只是说变量是未定义的。任何人都可以指出我哪里出错了?

0 个答案:

没有答案