简体   繁体   中英

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
                        }
                    }
                }
            });
        }
    });
});

Question: The problem is that in the data in chart are not showing. The entire chart is not showing. And with the log from chrome inspection: it says that there is an error: "Uncaught ReferenceError: text is not defined".

This has nothing to do with php, mysql or xampp. You are using an undefined method called text . The error message says it all. Check your third and fourth lines in the ajax success. You have:

var activeData = text(data.active);

Replace it with:

var activeData = data.active;

and see what happens.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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