在PHP中提交日期范围后刷新高图表

时间:2016-05-30 11:03:02

标签: php

我在PHP工作。我正在使用高图表,动态地从数据库中获取数据。现在我想显示某个日期范围之间的数据。从DB成功获取某个日期范围之间的数据,但现在如何刷新图表??

JS代码:

` function piechart(){

        var date_from   = $("#date_from").val();
        var date_to     = $("#date_to").val();
        var dataString = 'date_from=' + date_from + '&date_to=' + date_to;

        $.ajax({
            type: "GET",
            url: "pages/dashboard/chart_data.php",
            data: dataString,
            cache: false,
            success: function(html) {

        }
        });

        return false;
        }
    $(document).ready(function() {
        var options = {
            chart: {
                renderTo: 'container',
                plotBackgroundColor: null,
                plotBorderWidth: null,
                plotShadow: false
            },
            title: {
                text: 'Current Year Sales Report'
            },
            tooltip: {
                formatter: function() {
                    return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %';
                }
            },
            plotOptions: {
                pie: {
                    allowPointSelect: true,
                    cursor: 'pointer',
                    dataLabels: {
                        enabled: true,
                        color: '#000000',
                        connectorColor: '#000000',
                        formatter: function() {
                            return '<b>'+ this.point.name +'</b>: '+ this.percentage +' %';
                        }
                    }
                }
            },
            series: [{
                type: 'pie',
                name: 'Sales (Rupees)',
                data: []
            }]
        }

        $.getJSON("chart_data.php", function(json) {
            options.series[0].data = json;
            chart = new Highcharts.Chart(options);
        });



    });  

`

和chart_data.php

`     

if($date_from !='' AND $date_to !='')
{
    $where = "tran_date >='$date_from' AND tran_date <= '$date_to'";
    echo $db->piechart($where);
}
else
echo $db->piechart();

&GT?; `

任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

看起来好像是JavaScript问题。 您应该将代码移到

`$(document).ready(function() {`

阻止进入函数并在每次更改日期范围字段时执行它,或者第一次加载文档。