织梦CMS文章防刷新机制的代码

最近发现织梦CMS的文章点击计数器有个弊端,就是只要你刷新一下网页就做增加一次,也就是说只要有一个PV就算是一次点击,有时我们为了精确统计热门文章,则需要防刷新机制,所以自己试着修改下PHP代码,试了下,好像可以。

最近发现织梦CMS的文章点击计数器有个弊端,就是只要你刷新一下网页就做增加一次,也就是说只要有一个PV就算是一次点击,有时我们为了精确统计热门文章,则需要防刷新机制,所以自己试着修改下PHP代码,试了下,好像可以。

将plus/count.php 改为下面代码就OK了.

 
<?
$__ONLYDB = true;
require_once(dirname(__FILE__)."/../include/config_base.php");

session_start();  //新加入

if(empty($aid)) $aid="0";
$aid = ereg_replace("[^0-9]","",$aid);
if(empty($mid)) $mid="0";
$mid = ereg_replace("[^0-9]","",$mid);




if (!isset($_SESSION['c_time'.$aid]))  //  如果第一次访问,设定时间戳,并允许增加
{
    $_SESSION['c_time'.$aid] = time();

    $dsql = new DedeSql(false);
    $dsql->ExecuteNoneQuery("Update dede_archives set click=click+1 where ID='$aid'");
    if(!empty($mid)){
    $dsql->ExecuteNoneQuery("Update dede_member set pageshow=pageshow+1 where ID='$mid'");
    }
    if(!empty($view)){
        $row = $dsql->GetOne("Select click From dede_archives  where ID='$aid'");
        echo "document.write('".$row[0]."');\r\n";
    }
    $dsql->Close();
    exit();

}
elseif (time() - $_SESSION['ctime'.$aid] < 3600) // 如果在一小时内刷新页面,则不增加。按此可以设置永远不增加
{
    exit();
} else {                        // 如果超过一小时,则重新计时,并允许增加
    $allow_insert = true;
    unset($_SESSION['ctime'.$aid]);
}


本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

我们建网站,一般都有很多的广告位,只是很多人都不知道要怎么样添加,这里教给大家一种做漂浮广告的方法,也让自己的网站上有很多广告位存在。 首先在广告管理增加一个新广告,然后复制以下广告代码: div id=ad style=position:absolutea href=img src=/te
首先模拟会员登录和退出,有两个重要文件,一个是include下的memberlogin.class.php和include/helpers下的cache.helper.php文件。 原理为:memberlogin.class.php通过使用缓存助手helper(cache),然后/member/config.php文件引入memberlogin.class.php文件实
首先我们要知道这样的代码框的代码是什么?只要你找到了这个代码,我想你在修改模版的时候就会觉得不再是那么的困难了。我这里有一个简单的运行代码框的代码,发出来给大家分享: 运行代码框的源代码如下: (你可以先复制下面的代码,到本地进行测试活运行
hotwords|织梦网站热门搜索关键字标签标签名称:hotwords 标签功能:获取网站搜索的热门关键字 适用范围:全局使用 适用版本:DedeCMS V5.5/V5.6/V5.7 底层字段:暂无相关内容 标签文件:\include\taglib\hotwords.lib.php 标签说明: 织梦hotwords标签是用于获取网
我的网站要调用的循环的内容是lispan class=date[field:typename/]/spana href=[field:arcurl /] target=_blank[field:title /]/a/li但是生产html输出结果多了一些东西变成了: dl class=tbox dtstrong./strong/dt dd ul class=d1 ico3lispan class=date[fie
DEDECMS是最优秀的中文开源CMS系统之一了,不过,DEDE系统也不是尽善尽美的,存在许多待改善的地方,且不说它那基本广受诟病的安全问题,今天跟版网就找其中一个细节说说它的问题,那就是它的tag标签问题。 DEDECMS 中的tag功能设计得不合理,正确的方式是