<?php<BR>/**<BR> *<BR> * 统计软件与文章等月、周、当天排行<BR> *<BR> * $field_id(文章ID)<BR> */<BR>//统计月、周、当天排行的方法<BR>require_once(dirname(__FILE__)."/../include/common.inc.php");<BR>function countdown($field_id){<BR>date_default_timezone_set('Asia/Shanghai'); //设置默认时区<BR>global $dsql;<BR>$re_total = 1;<BR>$tableName = '#@__tongji';<BR>$nowDateArray = getdate(time());<BR>$sql_tongji = "select * from `$tableName` where aid=$field_id";<BR>$rs = $dsql->ExecuteNoneQuery2($sql_tongji);<BR>//如果不存在此篇文章信息,则新插入一条<BR>if($rs <= 0){<BR>//获取栏目ID值<BR>$sql_typeid = "select typeid from `#@__archives` where id=$field_id";<BR>$t_row = $dsql->GetOne($sql_typeid);<BR>$query = " INSERT INTO `$tableName` VALUES($field_id,$t_row[typeid],1,1,1,1,$nowDateArray[0]); ";<BR>$dsql->ExecNoneQuery($query);<BR>}else{<BR> $result = $dsql->GetOne($sql_tongji);<BR> $oldTimeStamp = $result['lasttime']; //最后点击时间 <BR> $m_total = $result['m_total']; //月点击<BR> $w_total = $result['w_total']; //周点击<BR> $d_total = $result['d_total']; //日点击 <BR> $t_total = $result['t_total']; //总点击 <BR> $oldDateArray = getdate($oldTimeStamp); </P><P> //统计当月<BR>if($nowDateArray["year"] == $oldDateArray["year"] && $nowDateArray["mon"] == $oldDateArray["mon"]){<BR> $m_total++;<BR> }else{<BR> $m_total = 1; <BR> }</P><P>//统计本周<BR>$tmpStartDate = mktime(0,0,0,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) - ($nowDateArray[ "wday "] * 86400); <BR>$tmpEndDate = mktime(23,59,59,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]) + ((6 - $nowDateArray[ "wday"]) * 86400); <BR>if($oldTimeStamp >= $tmpStartDate && $oldTimeStamp <= $tmpEndDate){<BR> $w_total++; <BR>}else{<BR> $w_total = 1; <BR>}</P><P>//统计今日<BR>$dayStart =mktime(0,0,0,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]); //当天开始时间戳<BR>$dayEnd <div style="color:transparent">!本文来源gaodai.ma#com搞#代!码(网</div><em>搞gaodaima代码</em> =mktime(23,59,59,$nowDateArray[ "mon"],$nowDateArray[ "mday"],$nowDateArray[ "year"]); //当天结束时间戳<BR>if($oldTimeStamp >= $dayStart && $oldTimeStamp <= $dayEnd){<BR> $d_total++;<BR>}else{<BR> $d_total = 1;<BR>}<BR> $t_total++;<BR>//更新统计数<BR> $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");<BR> $dsql->ExecuteNoneQuery("update dede_archives set click=$t_total where id=$field_id");<BR> $re_total = $t_total;<BR>}<BR>return $re_total;<BR>}</P><P>countdown($aid); //方法调用</P><P>/*<BR>//mysql表结构</P><P>CREATE TABLE IF NOT EXISTS `dede_tongji` (<BR> `aid` int(11) NOT NULL,<BR> `cid` smallint(5) NOT NULL,<BR> `tid` smallint(5) NOT NULL,<BR> `m_total` int(11) NOT NULL DEFAULT '1',<BR> `w_total` int(11) NOT NULL DEFAULT '1',<BR> `d_total` int(11) NOT NULL DEFAULT '1',<BR> `t_total` int(11) NOT NULL DEFAULT '1',<BR> `lasttime` int(12) NOT NULL,<BR> PRIMARY KEY (`aid`)<BR>) ENGINE=MyISAM DEFAULT CHARSET=latin1;<BR>*/<BR>?><BR>