php统计文章排行示例


Posted in PHP onMarch 04, 2014
<?php
/**
 *
 * 统计软件与文章等月、周、当天排行
 *
 * $field_id(文章ID)
 */
//统计月、周、当天排行的方法
require_once(dirname(__FILE__)."/../include/common.inc.php");
function countdown($field_id){
date_default_timezone_set('Asia/Shanghai'); //设置默认时区
global $dsql;
$re_total = 1;
$tableName = '#@__tongji';
$nowDateArray  = getdate(time());
$sql_tongji = "select * from `$tableName` where aid=$field_id";
$rs = $dsql->ExecuteNoneQuery2($sql_tongji);
//如果不存在此篇文章信息,则新插入一条
if($rs <= 0){
//获取栏目ID值
$sql_typeid = "select typeid from `#@__archives` where id=$field_id";
$t_row = $dsql->GetOne($sql_typeid);
$query = " INSERT INTO `$tableName` VALUES($field_id,$t_row[typeid],1,1,1,1,$nowDateArray[0]); ";
$dsql->ExecNoneQuery($query);
}else{
 $result = $dsql->GetOne($sql_tongji);
 $oldTimeStamp = $result['lasttime'];   //最后点击时间 
 $m_total =      $result['m_total'];    //月点击
 $w_total =      $result['w_total'];    //周点击
 $d_total =      $result['d_total'];    //日点击 
 $t_total =      $result['t_total'];    //总点击 
 $oldDateArray   =  getdate($oldTimeStamp); 
 //统计当月
if($nowDateArray["year"] == $oldDateArray["year"] && $nowDateArray["mon"] == $oldDateArray["mon"]){
  $m_total++;
 }else{
  $m_total = 1; 
 }
//统计本周
$tmpStartDate = mktime(0,0,0,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) - ($nowDateArray[ "wday "] * 86400); 
$tmpEndDate = mktime(23,59,59,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) + ((6 - $nowDateArray[ "wday"]) * 86400); 
if($oldTimeStamp >= $tmpStartDate && $oldTimeStamp <= $tmpEndDate){
  $w_total++; 
}else{
  $w_total = 1;  
}
//统计今日
$dayStart   =mktime(0,0,0,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]);  //当天开始时间戳
$dayEnd   =mktime(23,59,59,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]); //当天结束时间戳
if($oldTimeStamp >= $dayStart && $oldTimeStamp <= $dayEnd){
  $d_total++;
}else{
  $d_total = 1;
}
 $t_total++;
//更新统计数
 $dsql->ExecuteNoneQuery("update $tableName set m_total=$m_total,w_total=$w_total,d_total=$d_total,t_total=$t_total,lasttime=$nowDateArray[0] where aid=$field_id");
 $dsql->ExecuteNoneQuery("update dede_archives set click=$t_total where id=$field_id");
 $re_total = $t_total;
}
return $re_total;
}
countdown($aid); //方法调用
/*
//mysql表结构
CREATE TABLE IF NOT EXISTS `dede_tongji` (
  `aid` int(11) NOT NULL,
  `cid` smallint(5) NOT NULL,
  `tid` smallint(5) NOT NULL,
  `m_total` int(11) NOT NULL DEFAULT '1',
  `w_total` int(11) NOT NULL DEFAULT '1',
  `d_total` int(11) NOT NULL DEFAULT '1',
  `t_total` int(11) NOT NULL DEFAULT '1',
  `lasttime` int(12) NOT NULL,
  PRIMARY KEY (`aid`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
*/
?>
PHP 相关文章推荐
php 遍历数据表数据并列表横向排列的代码
Sep 05 PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 PHP
memcache命令启动参数中文解释
Jan 13 PHP
php获取apk包信息的方法
Aug 15 PHP
php获得文件大小和文件创建时间的方法
Mar 13 PHP
php检查是否是ajax请求的方法
Apr 16 PHP
typecho插件编写教程(四):插件挂载
May 28 PHP
php获取flash尺寸详细数据的方法
Nov 12 PHP
php中this关键字用法分析
Dec 07 PHP
YII框架关联查询操作示例
Apr 29 PHP
PhpStorm的使用教程(本地运行PHP+远程开发+快捷键)
Mar 26 PHP
phpStorm2020 注册码
Sep 17 PHP
php不使用插件导出excel的简单方法
Mar 04 #PHP
php无限遍历文件夹示例分享
Mar 04 #PHP
关于js和php对url编码的处理方法
Mar 04 #PHP
php面向对象中的魔术方法中文说明
Mar 04 #PHP
thinkphp实现多语言功能(语言包)
Mar 04 #PHP
thinkphp实现图片上传功能分享
Mar 04 #PHP
php判断是否为json格式的方法
Mar 04 #PHP
You might like
用PHPdig打造属于你自己的Google[图文教程]
2007/02/14 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
2011/05/24 PHP
PHP中使用SimpleXML检查XML文件结构实例
2015/01/07 PHP
学习PHP session的传递方式
2016/06/15 PHP
PHP培训要多少钱
2017/06/06 PHP
通过JAVASCRIPT读取ASP设定的COOKIE
2006/11/24 Javascript
JS 有名函数表达式全面解析
2010/03/19 Javascript
js Html结构转字符串形式显示代码
2011/11/15 Javascript
超棒的响应式布局jQuery插件Freetile.js
2014/11/17 Javascript
js实现顶部可折叠的菜单工具栏效果实例
2015/05/09 Javascript
javascript实现下班倒计时效果的方法(可桌面通知)
2015/07/10 Javascript
jquery合并表格中相同文本的相邻单元格
2015/07/17 Javascript
JavaScript表单焦点自动切换代码
2016/07/24 Javascript
jQuery插件zTree实现删除树子节点的方法示例
2017/03/08 Javascript
基于rollup的组件库打包体积优化小结
2018/06/18 Javascript
详解关于Vue2.0路由开启keep-alive时需要注意的地方
2018/09/18 Javascript
js设置默认时间跨度过程详解
2019/07/17 Javascript
基于Python实现的百度贴吧网络爬虫实例
2015/04/17 Python
tensorflow实现简单的卷积网络
2018/05/24 Python
python变量的存储原理详解
2019/07/10 Python
python 同时读取多个文件的例子
2019/07/16 Python
python列表切片和嵌套列表取值操作详解
2020/02/27 Python
CSS3中HSL和HSLA的简单使用示例
2015/07/14 HTML / CSS
优衣库英国官网:UNIQLO英国
2016/12/25 全球购物
英国领先的酒类网上商城:TheDrinkShop
2017/03/16 全球购物
介绍一下OSI七层模型
2012/07/03 面试题
linux面试题参考答案(5)
2014/09/01 面试题
社区八一活动方案
2014/02/03 职场文书
班级安全教育实施方案
2014/02/23 职场文书
支部组织生活会方案
2014/06/10 职场文书
自荐信怎么写
2015/03/04 职场文书
中秋节寄语2015
2015/03/24 职场文书
创业计划书之电动车企业
2019/10/11 职场文书
用javascript制作qq注册动态页面
2021/04/14 Javascript
Python selenium模拟网页点击爬虫交管12123违章数据
2021/05/26 Python
Mysql 如何合理地统计一个数据库里的所有表的数据量
2022/04/18 MySQL