[DST]新概念防暴力注册:用户自生成注册码注册for5.5[版主安装测试通过]
本插件由版主sakurakawaii于07年6月10日19:15分
在Windows XP Discuz!5.5.0标准模版 IE6 Mysql4.1下测试安装无错
本测试仅代表此插件安装无错,不包括今后长期使用中可能出现的问题 3月22日20:10分前安装的请再加入一步步骤第2.6步,对于register.php的更改。
4月12日4点50分前安装的请下载新附件,找到其中的sql.txt重新升级数据库,否则会导致一定数量后新用户无法注册!非常重要!
再次表示歉意。
之后安装的只需要按照安装步骤就可以了。
问题集请看3楼http://www.discuz.net/thread-468920-1-1.html
这是根据我以上自己的创意所写的插件。目前5.5没有可用的邀请注册插件。而防暴力注册又十分困难,希望这个能给大家带来一点好消息。
但请安装的朋友们注意,本插件并非邀请注册插件,是完全不一样的插件(除了MD5校验部分)
本程序只适合于5.5.0的安装。5.0下有部分文件不同,且风格css样式表部分不同,可能会出现美观问题。装过邀请注册插件的可能会出现2个功能冲突的问题,就不要安装了吧。
插件名称:用户自生成随机码注册程序 For 5.5
插件适应版本:Discuz! 5.5.0
插件作者:sakurakawaii
------------ sakurakawaii 为 Discuz! Helping Team C001成员
sakura插件总编号:0703
原模版改动:有
新增模版:有
数据库增加:1个 全新安装:
1.下载上传附件里Upload内的文件
2.1下载根目录的register.php,打开。查找- require_once DISCUZ_ROOT.'./forumdata/cache/cache_profilefields.php';
复制代码 在下面加入- //用户自领取注册码
- $invsettings = getautoregconfig();
- //用户自领取注册码
复制代码 2.2查找- showmessage('register_disable');
- }
复制代码 在下面加入- //用户自领取注册码
- $action=trim($action);
- if($action == 'check'){
-
- if (!$id) {
- showmessage('请输入注册码!');
- }
- else {
- $id = trim($id);
- $query = $db->query("SELECT * FROM {$tablepre}regcode where regcodes='$id'");
- $regcode = $db->fetch_array($query);
- if (!$regcode){showmessage('注册码不存在!');}
- else {
- if ($regcode[used]==1){
- showmessage('注册码已被使用!');
- }
- else {
- showmessage('注册码可以使用!');
- }
- }
- }
- }
- //用户自领取注册码
复制代码 2.3查找- $username = trim($username);
复制代码 下面加入- //用户自领取注册码
- $id=trim($id);
- $query = $db->query("SELECT * FROM {$tablepre}regcode where regcodes='$id' and used=0");
- $regcode = $db->fetch_array($query);
- if (!$regcode[regcodes]) {
- showmessage('注册码错误或者已经被使用!');
- }
- //用户自领取注册码
复制代码 2.4查找- $authstr = $regverify == 1 ? "$timestamp\t2\t$idstring" : '';
复制代码 在下面加入- //用户自领取注册码
- $db->query("UPDATE {$tablepre}regcode SET usedname='$username',usedtime='$timestamp',used=1 WHERE regcodes='$id'");
- //用户自领取注册码
复制代码 2.5查找在上面加入- function getautoregconfig() {
- @include DISCUZ_ROOT.'./forumdata/cache/plugin_autoreg.php';
- return $_DPLUGIN['autoreg'];
- }
复制代码 2.6查找- showmessage('register_succeed', dreferer());
复制代码 替换为- showmessage('register_succeed', 'index.php');
复制代码 2.7 register.php上传至原目录。
3.1打开templates/default/register.htm。查找- <tr>
- <td class="altbg1" width="21%"><span class="bold">{lang username}</span></td>
- <td class="altbg2"><div class="input"><input type="text" name="username" size="25" maxlength="15" id="username" onBlur="checkusername()"></div><div id="checkusername"></div>
- </td>
- </tr>
复制代码 在上面加入- <tr>
- <td class="altbg1"><span class="bold">注册码:</span></td>
- <td class="altbg2"><input type="text" name="id" size="25" maxlength="25"> <input type="button" value="检验注册码" onclick="window.open('register.php?action=check&id='+this.form.id.value);"> (校验刚才的注册码并贴入输入框)</td>
- </tr>
复制代码 3.2 register.htm传到原目录。
4.1打开templates/default/header.htm。如果你有多个风格都需更改。
查找- <a href="$link_register">{lang register}</a>
复制代码 替换为- <a href="plugin.php?identifier=autoreg&module=autoreg">{lang register}</a>
复制代码 4.2查找并删除(注意!!!!以下剔除了插件横板排列的代码,请将自己的前台调用插件移入下拉菜单或手动添加链接)- <!--{if !empty($plugins['links'])}-->
- <!--{loop $plugins['links'] $module}-->
- <!--{if !$module['adminid'] || ($module['adminid'] && $adminid > 0 && $module['adminid'] >= $adminid)}-->| $module[url] <!--{/if}-->
- <!--{/loop}-->
- <!--{/if}-->
复制代码 4.3 header传到原目录。
5.打开sql.txt,复制粘贴至后台升级数据库。
6.打开discuz_plugin_autoreg.txt,复制粘贴至后台导入插件。
7.完工。插件后台处请不要随意配置。尤其不能选择包含运行。 [ 本帖最后由 伊泽浩 于 2007-6-21 00:11 编辑 ] |
-
-
用户自生成随机码注册程序 For 5.5.rar (5.11 KB)
07.4.12重要更新后的安装包
-
4
评分次数
-