繁体   English   中英

ChartJS 未从 MySQL 显示

[英]ChartJS not showing from MySQL

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、mysql 或 xampp 无关。 您正在使用一个名为text的未定义方法。 错误消息说明了一切。 检查你在 ajax 中的第三和第四行是否成功。 你有:

var activeData = text(data.active);

将其替换为:

var activeData = data.active;

看看会发生什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM