PHP动态柱状图实现方法


Posted in PHP onMarch 30, 2015

本文实例讲述了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动态柱状图实现方法

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
计数器详细设计
Oct 09 PHP
php实现的常见排序算法汇总
Sep 08 PHP
php中call_user_func函数使用注意事项
Nov 21 PHP
php调用mysql存储过程实例分析
Dec 29 PHP
PHP实现的简易版图片相似度比较
Jan 07 PHP
PHP页面转UTF-8中文编码乱码的解决办法
Oct 20 PHP
纯PHP代码实现支付宝批量付款
Dec 24 PHP
php使用SAE原生Mail类实现各种类型邮件发送的方法
Oct 10 PHP
form自动提交实例讲解
Jul 10 PHP
PHP实现随机发放扑克牌
Apr 21 PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
Jul 10 PHP
php使用event扩展的io复用测试的示例
Oct 20 PHP
php实现的一个简单json rpc框架实例
Mar 30 #PHP
php实现读取内存顺序号
Mar 29 #PHP
php实现插入排序
Mar 29 #PHP
php实现插入数组但不影响原有顺序的方法
Mar 27 #PHP
WordPress自定义时间显示格式
Mar 27 #PHP
在php和MySql中计算时间差的方法详解
Mar 27 #PHP
PHP连接access数据库
Mar 27 #PHP
You might like
php中Y2K38的漏洞解决方法实例分析
2014/09/22 PHP
PHP实现表单提交数据的验证处理功能【防SQL注入和XSS攻击等】
2017/07/21 PHP
yii2的restful api路由实例详解
2019/05/14 PHP
jQuery get和post 方法传值注意事项
2009/11/03 Javascript
javascript 广告后加载,加载完页面再加载广告
2010/11/25 Javascript
JS自动缩小超出大小的图片
2012/10/12 Javascript
node.js中的fs.fsync方法使用说明
2014/12/15 Javascript
基于JavaScript操作DOM常用的API小结
2015/12/01 Javascript
Bootstrap 填充Json数据的实例代码
2017/01/11 Javascript
JavaScript中的普通函数和箭头函数的区别和用法详解
2017/03/21 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
JavaSctit 利用FileReader和滤镜上传图片预览功能
2017/09/05 Javascript
浅谈用Webpack路径压缩图片上传尺寸获取的问题
2018/02/22 Javascript
通过 JS 判断页面是否有滚动条的实现方法
2018/04/05 Javascript
vue项目搭建以及全家桶的使用详细教程(小结)
2018/12/19 Javascript
详解javascript对数组和json数组的操作
2019/04/15 Javascript
在Vue环境下利用worker运行interval计时器的步骤
2019/08/01 Javascript
layui 实现table翻页滚动条位置保持不变的例子
2019/09/05 Javascript
微信小程序 checkbox使用实例解析
2019/09/09 Javascript
Vue v-for循环之@click点击事件获取元素示例
2019/11/09 Javascript
Vue 3.0 全家桶抢先体验
2020/04/28 Javascript
Python用zip函数同时遍历多个迭代器示例详解
2016/11/14 Python
Python set常用操作函数集锦
2017/11/15 Python
python cx_Oracle的基础使用方法(连接和增删改查)
2017/11/19 Python
python实现排序算法解析
2018/09/08 Python
对pandas写入读取h5文件的方法详解
2018/12/28 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
keras模型可视化,层可视化及kernel可视化实例
2020/01/24 Python
2020新版本pycharm+anaconda+opencv+pyqt环境配置学习笔记,亲测可用
2020/03/24 Python
海蓝之谜(LA MER)澳大利亚官方商城:全球高端奢华护肤品牌
2017/10/27 全球购物
职业生涯规划书前言
2014/04/15 职场文书
班级体育活动总结
2014/07/05 职场文书
党的生日活动方案
2014/08/15 职场文书
体育个人工作总结
2015/02/09 职场文书
php访问对象中的成员的实例方法
2021/11/17 PHP
关于@OnetoMany关系映射的排序问题,使用注解@OrderBy
2021/12/06 Java/Android