php – Highcharts和Mysql
发布时间:2020-12-13 22:28:59 所属栏目:PHP教程 来源:网络整理
导读:我需要这段代码的帮助,我设法从 mysql数据库中提取数据并将它们转换为Highcharts所需的格式. ?php$query =mysql_query("select date_format(connect_time,'%Y-%m-%d %H %i') AS date,Customers.name as customer,Sum(duration) as secondes from CDR_Vendors
我需要这段代码的帮助,我设法从
mysql数据库中提取数据并将它们转换为Highcharts所需的格式.
<?php $query =mysql_query("select date_format(connect_time,'%Y-%m-%d %H %i') AS date,Customers.name as customer,Sum(duration) as secondes from CDR_Vendors inner join Customers on (CDR_Vendors.i_customer = Customers.i_customer) where i_vendor='32' and connect_time between '2010-09-01 00:00:00' and '2010-09-01 00:10:00' group by date ORDER BY date",$link) or die(mysql_error()); $row = mysql_fetch_assoc($query); $customer[] = $row['customer']; $json_secondes = array(); $json_date = array(); do{ $secondes[] = $row['secondes']; array_push($json_secondes,$row['secondes']); array_push($json_date,$row['date']); } while($row = mysql_fetch_assoc($query)); //echo json_encode($json_secondes,$row); //echo json_encode($json_date,$row); //echo join($secondes,','); ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Highcharts Example</title> <!-- 1. Add these JavaScript inclusions in the head of your page --> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <script type="text/javascript" src="../js/highcharts.js"></script> <!-- 1a) Optional: the exporting module --> <script type="text/javascript" src="../js/modules/exporting.js"></script> <!-- 2. Add the JavaScript to initialize the chart on document ready --> <script type="text/javascript"> var chart; $(document).ready(function() { chart = new Highcharts.Chart({ chart: { renderTo: 'container',defaultSeriesType: 'column' },title: { text: 'Monthly Average Rainfall' },subtitle: { text: 'Source: WorldClimate.com' },xAxis: { categories: <?php echo json_encode($json_date,$row);?> },yAxis: { min: 0,title: { text: 'Rainfall (mm)' } },legend: { layout: 'vertical',backgroundColor: '#FFFFFF',align: 'center',verticalAlign: 'top',x: 100,y: 70 },tooltip: { formatter: function() { return ''+ this.x +': '+ this.y +' Min'; } },plotOptions: { column: { pointPadding: 0.2,borderWidth: 0 } },series: [{ name: '<?php echo join($customer,');?>',data: [<?php echo join($secondes,');?>] }] }); }); </script> </head> <body> <!-- 3. Add the container --> <div id="container" style="width: 1300px; height: 500px; margin: 0 auto"></div> </body> </html> 此代码的问题在于它仅显示来自单个客户的数据,因此查询返回来自多个客户的数据. 这种方法是好的还是有另一种更简单的方法呢? 解决方法
尝试使用implode(‘,’,$customer);和implode(‘,$secondes);而不是连接功能.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |