本帖最后由 nlgongzi 于 2012-3-24 15:34 编辑
在 source 里面的 INCLUDE 下面的 space 目录里 找到space_index.php
将下面一段话
if(!$_G['setting']['preventrefresh'] || ($_G['uid'] && !$space['self'] && !in_array($space['uid'], $viewuids))) {
member_count_update($space['uid'], array('views' => 1));
$viewuids[$space['uid']] = $space['uid'];
dsetcookie('viewuids', implode('_', $viewuids));
}
修改为
if(!$_G['setting']['preventrefresh'] || (!$space['self'] && !in_array($space['uid'], $viewuids))) {
member_count_update($space['uid'], array('views' => 1));
if($_G['uid'] ){
$viewuids[$space['uid']] = $space['uid'];
dsetcookie('viewuids', implode('_', $viewuids));}
}
用游客身份访问你的个人空间 是不是计数增加了 这只是临时解决办法 因为这个 刷新一次就增加一个数字 会被有心之人利用 还有将
已有 人来访过 修改为 空间首页已有 人来访过 更为确切 DZ开发团队 的语文没学好 因为这个计数 没有统计进文章的计数和空间其它页面的计数
只能说 DZ开发团队对博客 个人空间这块 不是很重视
下面一段话 是访问者身份的 我想高手用IP地址来控制同一IP用户在某几分钟里刷新无效 就一切OK了
if(!$space['self'] && $_G['uid']) {
$query = DB::query("SELECT dateline FROM ".DB::table('home_visitor')." WHERE uid='$space[uid]' AND vuid='$_G[uid]'");
$visitor = DB::fetch($query);
$is_anonymous = empty($_G['cookie']['anonymous_visit_'.$_G['uid'].'_'.$space['uid']]) ? 0 : 1;
if(empty($visitor['dateline'])) {
$setarr = array(
'uid' => $space['uid'],
'vuid' => $_G['uid'],
'vusername' => $is_anonymous ? '' : $_G['username'],
'dateline' => $_G['timestamp']
);
DB::insert('home_visitor', $setarr, 0, true);
show_credit();
} else {
if($_G['timestamp'] - $visitor['dateline'] >= 300) {
DB::update('home_visitor', array('dateline'=>$_G['timestamp'], 'vusername'=>$is_anonymous ? '' : $_G['username']), array('uid'=>$space['uid'], 'vuid'=>$_G['uid']));
}
if($_G['timestamp'] - $visitor['dateline'] >= 3600) {
show_credit();
}
}
updatecreditbyaction('visit', 0, array(), $space['uid']);
}
|