ChartJS从MySQL未显示

问题描述 投票:0回答:1

PHP:chart_db.php

<?php
require_once ('dbh.inc.php');

$JSON_Response = array();

//Counts the number of Active
$count_active = mysqli_query($db, "SELECT client_id FROM client WHERE status = 1");
$JSON_Response['active'] = mysqli_num_rows($count_active);

//Counts the number of Inactive
$count_inactive = mysqli_query($db, "SELECT client_id FROM client WHERE status = 0");
$JSON_Response['inactive'] = mysqli_num_rows($count_inactive);

error_log('hello');
echo json_encode($JSON_Response);

?>

JS:chart.js $(document).ready(function(){

    $.ajax({
        url:"http://localhost/FAME/private/includes/chart_db.php",
        method: "GET",
        success: function(response){

            var data = JSON.parse(response);
            var activeData = text(data.active);
            var inactiveData = text(data.inactive);
            console.log(activeData);

            var ctx = document.getElementById('piechart').getContext('2d');
            var statusChart = new Chart(ctx, {
                type: 'doughnut',
                data: {
                    labels: ['Active', 'Inactive'],
                    datasets: [{ 
                        pointStyle: 'circle',
                        backgroundColor: [ 'rgb(78, 115, 223)', 'rgb(25, 179, 211)' ],
                        data: activeData, inactiveData
                    }]
                },
                options: {
                    responsive: true,
                    maintainAspectRatio: false,
                    segmentShowStroke: false,
                    cutoutPercentage: 70,
                    legend: {
                        onClick: false,
                        position: 'bottom',
                        labels: {
                            usePointStyle: true
                        }
                    }
                }
            });
        }
    });
});

问题:问题在于图表中的数据未显示。整个图表未显示。并使用chrome检查的日志:它表示存在错误:“未捕获的ReferenceError:未定义文本”。

php jquery mysql xampp chart.js
1个回答
0
投票

这与php,mysql或xampp无关。您正在使用一种称为text的未定义方法。错误消息说明了一切。检查ajax成功的第三行和第四行。您有:

var activeData = text(data.active);

替换为:

var activeData = data.active;

看看会发生什么。

© www.soinside.com 2019 - 2024. All rights reserved.