这个不需要插件,不需要上传什么东东。
很多论坛要么是qq登陆注册,要么是验证邮箱,要么就是人工审核等。结果把很多用户挡在门外,损失惨重啊。
但是不这么做相信很快论坛会被灌水机灌死的。哈哈不说了直接贴代码,个人觉得发出来了很快会被灌水机和谐的
首先,我们服务器保存一个session,然后在模板加入JS代码设置cookie,注册时验证一下是否一样
在class_member.php 加入以下代码(具体行数不好说,discuz版本不一样可能位置也不一样)
if(!submitcheck('regsubmit', 0, $seccodecheck, $secqaacheck)) {
新加代码
session_start();//如果觉得使用自带session不好,可以去研究下discuz带的
$se_data = MD5('date'.time());
$_SESSION['reg_key'] = $se_data;
其他原有代码不变
}else{
session_start();
验证代码
if(!$_SESSION['reg_key']){
showmessage("防止灌水机注册!请刷新后注册,如刷新后不能注册请联.....系解决...");
}
$reg_key = $_SESSION['reg_key'];
unset($_SESSION['reg_key']);
if($reg_key != $_COOKIE['reg_key']){
showmessage("防止灌水机注册!请刷新后注册,如刷新后不能注册请联系....解决...");
};
其他原有代码不变
}
在模板文件register.htm页面加入js代码
<script type="text/javascript">
document.cookie="reg_key=$se_data";
</script>
首先,由JS设置cookie。现在灌水机应该不会去解析js代码吧。
出处: bbs.23qw.com
|