首页 > 站点建设 > 禁止游客访问Discuz 7.2搭建的论坛

禁止游客访问Discuz 7.2搭建的论坛

2010年8月6日 发表评论 阅读评论

找了一圈没发现DZ后台有哪儿可以设置禁止游客访问的,查了一下可以简单改代码实现这个功能,具体为:

修改include/common.inc.php文件,在417行

if(isset($allowvisit) && $allowvisit == 0 && !(CURSCRIPT == 'member' && ($action == 'groupexpiry' || $action == 'activate'))) {
   showmessage('user_banned', NULL, 'HALTED');
} elseif(!(in_array(CURSCRIPT, array('logging', 'wap', 'seccode', 'ajax')) || $adminid == 1)) {
   if($bbclosed) {
      clearcookies();
      $closedreason = $db->result_first("SELECT value FROM {$tablepre}settings WHERE variable='closedreason'");
      showmessage($closedreason ? $closedreason : 'board_closed', NULL, 'NOPERM');
   }
   periodscheck('visitbanperiods');
}

之后增加如下代码

if(!$discuz_uid && !(defined('CURSCRIPT') && in_array(CURSCRIPT, array('logging', 'wap', 'seccode','ajax','register')))) {
   showmessage('not_loggedin', NULL, 'NOPERM');
}

代码说明:增加的代码是根据第一段代码修改而来,第一段代码功能是限制封禁用户和论坛关闭时的全站访问限制;第二段代码中的$discuz_uid为用户编号,游客编号为0,登陆用户$discuz_uid值大于0,据此判断是否为游客。


枫芸志原创文章,转载请注明来源并保留原文链接

本文链接:http://witmax.cn/dz-ban-guest.html


分类: 站点建设 标签: 4,928次阅读
  1. 2010年8月8日17:07 | #1

    很不错的博客 内容很丰富 也希望博主能够回访 大家彼此交流一下

    [回复]

    晴枫 回复:

    @coozd, 你的站关掉留言了

    [回复]

  2. 2010年8月9日09:06 | #2

    没捣鼓过dz,但是一个功能齐全的论坛不会连这个都不能设置吧。

    [回复]

    晴枫 回复:

    @冰河, 找了一圈没找到,只有停止全站访问的全局设置

    [回复]

  3. 2010年8月18日12:24 | #3

    收藏了,不错的代码,用到phpwind里改一下也可以的,

    [回复]

  1. 本文目前尚无任何 trackbacks 和 pingbacks.
订阅评论
  欢迎参与讨论,请在这里发表您的看法、交流您的观点。