本文实例讲述了PHP动态柱状图实现方法。分享给大家供大家参考。具体分析如下:
1.需求
查询最近一个月的数据总条数和审核通过的条数,做成柱状图
2.实现代码:
<!DOCTYPE html>
<?php
//计算上一个月的今天
function last_month_today($time){
$last_month_time = mktime(date(\"G\", $time), date(\"i\", $time),date(\"s\", $time), date(\"n\", $time), 0, date(\"Y\",$time));
$last_month_t = date(\"t\", $last_month_time);
if ($last_month_t < date(\"j\", $time)) {
return date(\"Y-m-t H:i:s\", $last_month_time);
}
return date(date(\"Y-m\", $last_month_time) . \"-d\", $time);
}
?>
<?php
include dirname(dirname(dirname(__FILE__))).\'/config.php\';
$endDate = date(\'Y-m-d\');
$date = strtotime($endDate);
$beginDate= last_month_today($date);
//查询最近一个月的总的数据条数
$sql = \'select count(*) from newpro where p_date>\\\'\'.$beginDate.\'\\\' and p_date<\\\'\'.$endDate.\'\\\'\';
//$sql = \"select count(*) from newpro where p_date>\'$beginDate\' and p_date <\'$endDate\'\";//这条语句也可以
$d = db()->query($sql)->fetch(PDO::FETCH_NUM);
//echo \"总的数据条数:\".$d[0];
//查询审核通过的数据条数
$sql2=$sql.\' and is_pa_check_first=1 and is_pa_check_second=1 and is_pa_check_third=1\';
$d2 = db()->query($sql2)->fetch(PDO::FETCH_NUM);
//echo \"审核通过的数据条数:\".$d2[0];
//查询一次审核通过的条数
$sql3=$sql.\' and is_pa_check_first=1\';
$d3 = db()->query($sql3)->fetch(PDO::FETCH_NUM);
//查询二次审核通过的条数
$sql4=$sql.\' and is_pa_check_first=1 and is_pa_check_second=1\';
$d4 = db()->query($sql4)->fetch(PDO::FETCH_NUM);
?>
<html>
<head>
<meta charset=\"utf-8\"/>
<style>
table{
cellpadding:0px;
cellspacing:0px;
}
p{
padding:0px;
margin:0px;
}
div{
background-color:#669900;
width:50px;
}
#div1{
height:200px;
}
</style>
<script type=\"text/javascript\" src=\"../../../js/jquery-1.7.2.min.js\"></script>
</head>
<body>
<table border=\"0\" >
<tr align=\"center\" valign=\"bottom\">
<td>
<p><?php echo $d[0]?></p>
<div id=\"div1\"></div>
</td>
<td >
<p><?php echo $d3[0]?></p>
<div style=\"height:<?php $str=floor(($d3[0]/$d[0])*200); echo $str.\'px\'?>\"></div>
</td>
<td >
<p><?php echo $d4[0]?></p>
<div style=\"height:<?php $str=floor(($d4[0]/$d[0])*200); echo $str.\'px\'?>\"></div>
</td>
<td >
<p><?php echo $d2[0]?></p>
<div style=\"height:<?php $str=floor(($d2[0]/$d[0])*200); echo $str.\'px\'?>\"></div>
</td>
</tr>
<tr align=\"center\" valign=\"top\">
<td><p>总计</p></td>
<td><p>一审通过</p></td>
<td><p>二审通过</p></td>
<td><p>审核通过</p></td>
</tr>
</table>
</body>
</html>
3.效果图如下所示:
希望本文所述对大家的php程序设计有所帮助。
本文地址:https://www.stayed.cn/item/25344
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我