discuz论坛经常有注册机在论坛批量发帖
recaptcha可以有效防止注册机自动注册,减少垃圾用户
discuz注册页面部署recaptcha只需要修改两个文件
1 修改模板文件 template\default\member\register.htm
在页面最后一个 div class="rfm" 上面添加recaptcha客户端代码
<script src='https://www.recaptcha.net/recaptcha/api.js' defer></script> <div class="rfm"> <table> <tr> <th><span class="rq">*</span></th> <td> <div class="g-recaptcha" data-sitekey="XXXjCHUUAAAAAMzCuvXXXGoekD3P0nGwTQ3MVXXX"></div> </td> <td class="tipcol"></td> </tr> </table> </div>
2 修改注册页面调用代码 source\module\member\member_register.php
直接在 $ctl_obj = new register_ctl(); 上面添加
$secret = 'XXXjCHUUAAAAADPK1p_3R87YEGBkxmYKy4D8sXXX' ; $pass = $_G['gp_password'] ? $_G['gp_password']:$_G['gp_'.$_G['setting']['reginput']['password']]; if( $pass && !empty($_POST['g-recaptcha-response'])) { $verifyResponse = file_get_contents('https://www.recaptcha.net/recaptcha/api/siteverify?secret='.$secret.'&response='.$_POST['g-recaptcha-response']); $responseData = json_decode($verifyResponse); if (!$responseData->success) { showmessage('验证码输入不正确!' ); } } elseif($pass && !$_POST["recaptcha_response_field"]) { showmessage('请输入验证码!'); }
此处评论已关闭