从数据库显示图表数据 [英] Displaying chart data from a database

查看:123
本文介绍了从数据库显示图表数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

按照 http://docs.highcharts.com/中的说明操作#预处理数据从数据库显示一些数据来自使用PHP PDO和MySQL的数据库,但我只有当我显示图表时才得到切片..这是我的代码

Im following the instructions in http://docs.highcharts.com/#preprocessing-data-from-a-database to display some data comming from a database using php PDO and mysql but i only get slices when i show the chart.. this is my code

MODEL

MODEL

  public function get_proyectos_service_por_id($idproject) {

    $sql = "SELECT p.id_project, s.service_type, s.completion_status, s.id_service, sp.id_projectserv

    FROM projects p
    LEFT JOIN project_serv sp ON p.id_project = sp.id_project
    LEFT JOIN services s ON sp.id_service = s.id_service 
    WHERE p.id_project = ?";

    $stmt = $this->dbh->prepare($sql);

    $stmt->bindParam(1, $idproject, PDO::PARAM_INT);
    $stmt->execute();

    $rows = array();

    foreach( $stmt->fetchAll(PDO::FETCH_ASSOC) as $row ){ 

     $rows[] = array("service" =>$row['service_type'], "status" =>$row['completion_status']); 

 } 

 return $rows;
}

 // Now i call this method

 $project = new Proyecto();
 $serv = $project->get_proyectos_service_por_id($pro);

//这是JS的输出

$(function () {
                var options = {
                    chart: {
                        renderTo: 'chart_div',
                        defaultSeriesType: 'pie'
                    },
                    title: {
                        text: 'Datos de proyecto'
                    },

                    series: [{
                        data: [<?php echo implode(",", $serv); ?>]

                    }]
                };
                new Highcharts.Chart(options);  
            });


推荐答案

请阅读有关预处理数据的文章 http://docs.highcharts.com/#preprocessing ,你也可以使用json_encode()

Please familair with article about preprocessing data http://docs.highcharts.com/#preprocessing , you can also use json_encode()

这篇关于从数据库显示图表数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆