【问题标题】:how to get data from controller to view (highchart) php codeigniter如何从控制器获取数据以查看(highchart)php codeigniter
【发布时间】:2015-03-18 07:22:52
【问题描述】:

我想查看系列 Highchart 的值,但是当我调试它时,它只是不显示值。 这是我的代码

这是我的观点

<script type="text/javascript" src="<?php echo base_url(); ?>public/jquery-1.11.2.min.js"></script>
<script type="text/javascript" src="<?php echo base_url(); ?>public/highcharts/js/highcharts.js"></script>
<script type="text/javascript" src="<?php echo base_url(); ?>public/highcharts/js/highcharts-3d.js"></script>
<script type="text/javascript" src="<?php echo base_url(); ?>public/highcharts/js/modules/exporting.js"></script>
<script type="text/javascript" src="<?php echo base_url(); ?>public/highcharts/js/themes/grid-light.js"></script>

<style type="text/css">
</style>        


<script type="text/javascript">
    var chart1;
    jQuery(document).ready(function(){
        chart1 = new Highcharts.Chart({
            chart: {
                renderTo: 'container',
                type: 'column',
                borderWidth: 2,
                animation: {
                    duration: 1000
                },
                spacingRight: 25,
                backgroundColor: {
            linearGradient: [0, 0, 500, 500],
            stops: [
                [0, 'rgb(255, 255, 255)'],
                [1, 'rgb(229, 238, 238)']
            ]
        },
            },
            tooltip: {
                backgroundColor: '#FCFFC5',
                shadow: true,
            },

            title: {
                text: 'Store Chart'
            },
            credits: {
                enabled: false
            },
            xAxis: {
                categories: [<?php echo "'".implode("','",$branch_name)."'";?>]
            },
            yAxis: {
                title: {
                    text: 'Tingkat Penjualan'
                }
            },


            exporting: {
                buttons: {
                contextButton: {
                text: 'Export'
                    }
                }
            },
            series: [<?php echo "'".implode("','",$branch_sell)."'";?>],
                 plotOptions: {
            series: {
            color: '#66B2FF'
            }
        }


        });

        });
        </script>

这是控制器

public function index()
{

    $data = array();
    $this->menu_handler->set_header($data,1,0);
    $this->load->model('m_admin');
    $get_branch         = $this->m_admin->get_chart_store();

    $get_selling_store  = $this->m_admin->get_sell_store();


    $data['branch_name'] = array();

    $data['branch_sell'] = array();

    for($i=0,$n=count($get_branch); $i<$n; $i++)
    {
        $data['branch_name'][] = $get_branch[$i]->NAMA_CABANG;
    }

    for($i=0,$n=count($get_selling_store); $i<$n; $i++)
    {
        $data['branch_sell'][]  = $get_selling_store[$i]->rslt;
    }
    $series_data[]  = array('name' => 'Branch Store', 'data' => array($get_selling_store));



    $data['series_data'] = json_encode($series_data);


    $this->load->view('welcome_message', $data);
    global $file_counter,$error_file,$size_counter; 

}

这是我的模型

<?php if (!defined('BASEPATH'))
exit('No direct script access allowed');
function get_chart_store($id_store=''){
    global $sec_database;
    if(empty($id_store))
    {
        $get_detail = $sec_database->select('*')->get('MST_CABANG')->result();
    }
    else
    {
        $get_detail = $sec_database->select('*')->where('CABANG_ID',$id_store)->get('MST_CABANG')->result();
    }

    if(count($get_detail) > 0)
    {
        return $get_detail;
    }
    else
    {
        return 1;   
    }
}

function get_sell_store($id_sell='')
{
    global $sec_database;
    $q_detailstore = "
        SELECT
        sd.CABANG_ID,
        sd.`NAMA_CABANG`,
        SUM(SALES_TOTAL) as rslt

        FROM
        MST_SALES as md
        RIGHT JOIN MST_CABANG as sd
        ON md.`CABANG_ID` = sd.CABANG_ID

        GROUP BY
        sd.CABANG_ID 
    ";
    $get_detail_selling = $sec_database->query($q_detailstore,array($id_sell))->result();
    if(count($get_detail_selling) > 0)
    {
        return $get_detail_selling;
    } 
    else
    {
        return 1;
    }

}

图表仅显示系列,但 我如何将系列的价值添加到图表中?对不起,我是新手.. thx 之前

【问题讨论】:

    标签: php sql codeigniter


    【解决方案1】:

    implode() 不适用于多维数组。所以它不是打印价值

    试试

    $data['branch_name'] = $get_branch[$i]->NAMA_CABANG;
    

    而不是

    $data['branch_name'][] = $get_branch[$i]->NAMA_CABANG;
    

    在您的控制器中。与您的 branch_sell 变量

    相同

    更新

    for($i=0,$n=count($get_branch); $i<$n; $i++)
    {
        $data['branch_name'] = $get_branch[$i]->NAMA_CABANG;
    }
    
    array_walk($data['branch_name'],function (&$val){ $val="'".$val."'";});
    

    【讨论】:

    • 我该怎么办?系列:[],
    • @RobbyAliDjunaedi 哦,我忘了,heighchart api 需要单引号值。所以请用我的更新代码更新你的控制器代码。
    • 如果我使用 $data['branch_name'] = $get_branch[$i]->NAMA_CABANG; 则不会出现但如果我把 [ ] @Shravan Shrama
    猜你喜欢
    • 2018-12-11
    • 1970-01-01
    • 2017-09-06
    • 1970-01-01
    • 2018-02-06
    • 2012-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多