深入PHP许愿墙模块功能分析(8)


<?php
$graph = new PieGraph(990,276); //创建画布
$graph->SetShadow(); //设置阴影
$graph->title->Set("应用3D饼形图统计分析全部区域许愿比率"); //设置标题名称
$graph->title->SetFont(FF_SIMSUN,FS_BOLD); //设置标题的字体加粗
$graph->legend->SetFont(FF_SIMSUN,FS_NORMAL); //设置饼形图文字的字体
$size=0.5; //设置饼形图的半径
/***********************统计全部许愿比率*************************/
//创建饼形图对象
$p0= new PiePlot3D($arraynum0); //创建饼形图对象
$p0->SetLegends($arraycip0); 
$p0->SetSize($size); //设置饼形图的大小
$p0->SetCenter(0.45,0.48); //设置饼形图的坐标位置
$p0->SetLegends($arraycip0); //设置城市名称
$p0->value->SetFont(FF_FONT0); //设置字体
$p0->title->SetFont(FF_SIMSUN,FS_BOLD);  //设置标题字体加粗
/*************************************************************/
$graph->Add($p0);  //添加3D饼形图到图像中
$graph->Stroke(); //输出图像
?>


(3)应用3D饼形图动态统计分析”亲情类“的许愿比率。其实现方法与获取全部的许愿比率的方法基本类似,不同的是这里在检索亲情类许愿人数时设置了where查询条件。另外在设置饼形图的半径和位置上稍微有变化。

复制代码 代码如下:


<?php
include("global.php"); //链接数据库文件
include ("jpgraph/jpgraph.php"); //引用图表分析类文件
include ("jpgraph/jpgraph_pie.php"); //引用饼形图类文件
include_once ("jpgraph/jpgraph_pie3d.php");  //引用3D饼图PiePlot3D对象所在的类文件
/***********************统计亲情类别*************************/
$sql2="select distinct(count(cip)) as num,cip from tb_wishes where wishsort='亲情' group by cip ";
$DB->query($sql2);  //动态统计亲情类许愿
$res2=$DB->get_rows_array($sql2); //生成二维数组
$rows_count2=count($res2);  //统计二维数组的数量
$arraynum2=array(); //声明城市”亲情类“许愿总数数组
$arraycip2=array();  //声明”亲情类“城市名称数组
//解析数组
for($k=0;$k<$rows_count2;$k++){
 array_push($arraynum2,$res2[$k][num]); //输出城市的许愿数量
 array_push($arraycip2,$res2[$k][cip]);  //输出城市名称
}
/*************************************************************/
//创建画布
$graph = new PieGraph(320,246);  //创建画布
$graph->SetShadow(); //设置阴影
$graph->title->Set("统计分析全部区域的[ 亲情类 ] 许愿比率");  //设置标题名称
$graph->title->SetFont(FF_SIMSUN,FS_BOLD); //设置标题的字体加粗
$graph->legend->SetFont(FF_SIMSUN,FS_NORMAL); //设置饼形图文字的字体
$size=0.3;  //设置饼形图的半径
/***********************统计亲情许愿比率*************************/
$p= new PiePlot3D($arraynum2); //创建饼形图对象
$p->SetLegends($arraycip2);  //设置城市名称
$p->SetSize($size);  //设置饼形图的大小
$p->SetCenter(0.45,0.55); //设置饼形图的坐标位置
$p->value->SetFont(FF_FONT0); //设置字体
$p->title->SetFont(FF_SIMSUN,FS_BOLD); //设置标题字体加粗
/*************************************************************/
$graph->Add($p); //添加3D饼形图到图像中
$graph->Stroke(); //输出图像
?>


3,许愿墙列表,许愿墙字条高级搜索功能的实现
为了便于访客能更清晰地查看各种不同类别的许愿字条,本模块设计了爱墙列表和许愿字条高级搜索功能。其中,爱墙列表时在默认状态下检索全部的许愿字条,而高级搜索功能是按照访客设置的一定的查询条件来检索与之匹配的许愿字条。
设计爱墙列表及许愿字条高级搜索的表单元素如下:

复制代码 代码如下:


<table cellpadding="0" cellspacing="0">
 <form method="get" action="">
  <tr>
   <td bgcolor="#339933">请输入查询条件:
    <input type="text" size="30">&nbsp;
    <select>
    <option value="奥运会">奥运会</option>
    <option value="汶川">汶川</option>
    <option value="爱情">爱情</option>
    <option value="亲情">亲情</option>
    <option value="友情">友情</option>
    <option value="自己">自己</option>
    <option value="全部" selected="selected">全部</option>
    </select>
    <input type="submit" value="检索许愿">
    &nbsp;(支持多条件查询,如:爱墙号、许愿人、许愿内容等)&nbsp;
   </td>
       </tr>
    </form>
</table>


4,许愿墙显示效果如图:

深入PHP许愿墙模块功能分析

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/a36cf8cd326a4ac9ed3b48298984555e.html