叶子小小的,碧绿碧绿的,花儿小小的,好可爱。紫红色的玫瑰花在风中翩翩起舞,玫瑰花树枝上还有调皮又可爱的小刺,你可要当心哦!你看,那个大仙人球旁围着8个小仙人球,好像一家人聚在一起,多欢快呀!
最近发现织梦DEDECMS的文章点击计数器有个弊端,就是只要你刷新一下网页就做增加一次,
也就是说只要有一个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]); } |
本文织梦dedeCMS文章防刷新增加点击数好代码教程到此结束。你的所有不甘和怨气来源于你的不自信和没实力。小编再次感谢大家对我们的支持!