• 奇*猫 下载了资源 免费2025彩虹易支付前端新模板美化版源码免费下载
  • 奇*猫 下载了资源 价值300元2025新版免登入注册成人用品商城系统源码/性用品商城系统/情趣用品商城
  • 奇*猫 下载了资源 【全开源】跑腿小程序/智能派单/系统派单/同城配送/校园跑腿/预约取件/用户端+骑手端
  • 奇*猫 下载了资源 SSL证书管理系统工具网站源码,自动申请、部署SSL证书,并在证书即将过期时自动
  • 奇*猫 下载了资源 全开源TikTok跨境商城源码/TikTok内嵌商城源码 前端uniapp+后端
  • 奇*猫 下载了资源 价值800元的【修复版】红娘金媒10.3.1婚恋相亲系统源码+安装教程
  • 奇*猫 下载了资源 仿天涯论坛系统源码带后台 支持打包APP安装包 开放式PHP原生态模板
  • 奇*猫 下载了资源 房屋租赁系统源码下载 带员工管理系统
  • 奇*猫 下载了资源 小利特惠源码/生活缴费/电话费/油卡燃气/等充值业务类源码附带承兑系统
  • 奇*猫 下载了资源 基于thinkphp6框架的三网话费余额系统源码/查询API系统源码

前面文章我简单介绍了Open Flash Chart2(OFC)的使用方法,本文将以笔者做过的实际项目为例,介绍通过PHP读取MYSQL数据库里的数据,然后生成JSON数据,再通过FLASH渲染成漂亮的动态饼状图的方法。

1、在HTML页面的head标签之间加入以下代码:

<script type="text/javascript" src="js/swfobject.js"></script>
<script type="text/javascript">
var flashvars = {"data-file":"area_pie.php"}; //这里是数据源 
var params = {menu: "false",scale: "noScale",wmode:"opaque"}; 
swfobject.embedSWF("open-flash-chart.swf", "chart", "550px", "350px",
 "9.0.0","expressInstall.swf", flashvars,params); 
</script>

注意:与上一张不同的是我们使用的数据源文件:area_pie.php,该文件就是用来将MYSQL数据生成JSON数据的。其他的都跟上一篇文章介绍的一样,请参照Open Flash Chart 超强的图表生成组件。

2、在body中加入载入图表的HTML元素。

<div id="chart"></div> 

3、准备PHP库。

我们知道OFC提供了各种接口程序,包括PHP/PHP5、Pear、Python、Java、Dotnet。

我们将从官网上下载的压缩包文件解压后发现有一个名为php-ofc-library文件夹,这里放的就是PHP接口的所有库文件,不用管里面的文件,只需把整个文件夹复制到你的项目的根目录下并改名为ofc。

4、读取mysql生成JSON数据

这是关键部分,调用mysql数据库接口的部分代码大家可以自己写下,限于篇幅,本文就没有将其附上。

area_pie.php代码如下:

include_once ('global.php');  //调用数据库
include_once ('ofc/open-flash-chart.php'); //调用OFC库文件
//设置图表标题
$title = new title( '各区域单位场所数量分布图'.date('Y-m-d') );
$title->set_style("font-size:12px; font-weight:bold;");
$pie = new pie();
$pie->set_alpha(0.6);
$pie->set_start_angle( 32 );
$pie->add_animation( new pie_fade() );
$pie->set_tooltip( '#val# of #total#
#percent# of 100%' );
$pie->set_colours( array('#1C9E05','#FF368D','#0099cc','#d853ce','#ff7400','#006e2e',
'#d15600','#4096ee','#c79810') );
//读取各区域信息
$sql="select sum(total) as num from ".$prefix."district";
$query=$db->query($sql);
$rs=$db->fetch_array($query);
$t=$rs[num];
$sql="select name,total from ".$prefix."district";
$query=$db->query($sql);
while($row=$db->fetch_array($query)){
	$total=$row[total];
	if(!empty($t)){
		$v=round($total/$t,4)*100;
	}else{
		$v=0;
	}
	$dis[]=array("name"=>$row[name],"total"=>$row[total],"v"=>$v);
}
$len_dis=count($dis);
for($i=0;$i<$len_dis;$i++){
    $dis_value[]=new pie_value(intval($dis[$i][total]),$dis[$i][name]."(".$dis[$i][v]."%)");
}
$pie->set_values($dis_value);

$chart = new open_flash_chart();
$chart->set_title( $title );
$chart->add_element( $pie );
$chart->x_axis = null;
echo $chart->toPrettyString(); //生成json数据

在线客服请认准 @Pan10yuanma   👈直接点击联系客服,注意核实账号!!!

 
显示验证码
没有账号?注册  忘记密码?