Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[发布] 邀请码注册程序 for discuz5.0 正式版(开源版)

[复制链接]
e_zailai 发表于 2006-9-15 22:39:08 | 显示全部楼层 |阅读模式
【C 84】:Discuz! 5『插件.风格.美化.功能』HY清风 收录贴! 为本帖授予收录编号!
A类为模版风格B类为美化C类为插件,D类为超级功能
  




邀请码注册程序 for discuz5.0 正式版(开源版)

修改自
////请码注册程序 for discuz4.0 正式版 ////
////           1.0                          ////     
////                                        ////
////  作者:vicko                         ////
////  时间:2005/10/22

当目前实现功能:
用户注册需要填写邀请码(可开关)
用户使用金钱购买邀请码(价格可设定)
管理员查看所有邀请码
管理员奖励邀请码


希望使用的人再完善其它功能!


增加数据表1个

修改文件2个:

register.php(5处)
templates/default/register.htm(1处)

增加文件2个:

plugins/invite/invite.php
templates/default/invite.htm

全新安装方法:(需要安装银行插件


1、升级数据库:

  1. CREATE TABLE `cdb_regcode` (
  2.   `regcodeid` tinyint(20) unsigned NOT NULL auto_increment,
  3.   `userid` varchar(20) NOT NULL default '',
  4. `buyname` varchar(20) NOT NULL default '',
  5. `usedname` varchar(20) NOT NULL default '',
  6.   `buytime` int(20) NOT NULL default '0',
  7.   `usedtime` int(20) NOT NULL default '0',
  8.   `regcodes` varchar(100) NOT NULL default '',
  9.   `used` varchar(5) NOT NULL default '0',
  10.   UNIQUE KEY `regcodeid` (`regcodeid`)
  11. ) ;
复制代码



2、在plugins目录下建立invite文件夹,上传附件压缩包中plugins/invite目录下的程序
上传模版invite.htm


3.修改文件register.php
查找
  1. require_once DISCUZ_ROOT.'./forumdata/cache/cache_profilefields.php';
复制代码

在下面添加
  1. //invite hack
  2. $invsettings = getinviteconfig();
  3. //invite hack
复制代码



查找
  1. if($discuz_uid) {
  2.         showmessage('login_succeed', 'index.php');
  3. }
复制代码


在下面添加
  1. //invite hack
  2. if($invsettings['vars']['allowuse'])
  3.         {
  4. $action=trim($action);
  5. if($action == 'check'){
  6.         
  7. if (!$id) {
  8.         showmessage('请输入注册邀请号!');
  9.                 }
  10.                 else {
  11.                         $id = trim($id);
  12.         $query = $db->query("SELECT * FROM {$tablepre}regcode where regcodes='$id'");
  13. $regcode = $db->fetch_array($query);
  14. if (!$regcode){showmessage('邀请号不存在!');}
  15. else {
  16.         if ($regcode[used]==1){
  17.                         showmessage('邀请号已被使用!');
  18.                 }
  19. else {
  20. showmessage('邀请号可以使用!');
  21. }
  22. }
  23. }
  24. }
  25.         }
  26.         //invite hack
复制代码

查找
  1. $username = trim($username);
复制代码


在下面添加
  1. //invite hack
  2. if($invsettings['vars']['allowuse'])
  3.         {
  4.                 $id=trim($id);
  5. $query = $db->query("SELECT * FROM {$tablepre}regcode where regcodes='$id' and used=0");
  6. $regcode = $db->fetch_array($query);

  7. if (!$regcode[regcodes]) {
  8.                         showmessage('序列号错误或者已经被使用!');
  9.                 }
  10.         }
  11.                
  12. //invite hack
复制代码


查找
  1. $authstr = $regverify == 1 ? "$timestamp\t2\t$idstring" : '';
复制代码


在下面添加
  1. //invite hack
  2. if($invsettings['vars']['allowuse'])
  3.         {

  4. $db->query("UPDATE {$tablepre}regcode SET usedname='$username',usedtime='$timestamp',used=1 WHERE regcodes='$id'");

  5. }
  6. //invite hack
复制代码

查找

  1. ?>
复制代码

在上面添加

  1. function getinviteconfig() {
  2.         @include DISCUZ_ROOT.'./forumdata/cache/plugin_invite.php';
  3.         return $_DPLUGIN['invite'];
  4.         }
复制代码


5.修改摸版register.htm
查找
  1. <!--{if $seccodecheck}-->
复制代码

在上面添加
  1.                 <!--{if $invsettings['vars']['allowuse']}-->
  2.                 <tr>
  3.                 <td bgcolor="{ALTBG1}" width="21%">注册邀请号:</td>
  4.                 <td bgcolor="{ALTBG2}" class="smalltxt"><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);">
  5.         </td>(本论坛目前只有收到已注册会员邀请者才能注册,请将注册邀请号填写在左方的输入框中)</td>
  6.                 </tr>
  7.                 <!--{/if}-->
复制代码




5.导入插件包里的discuz_plugin_invite.txt文件里的内容

后台运行邀请设置如下图示:

[ 本帖最后由 e_zailai 于 2006-10-15 01:59 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
lgy 发表于 2006-9-15 22:40:03 | 显示全部楼层
喔...好像在那见过~~
回复

使用道具 举报

laohe121 发表于 2006-9-15 22:41:07 | 显示全部楼层
好象有人发过了吧
回复

使用道具 举报

 楼主| e_zailai 发表于 2006-9-15 22:43:36 | 显示全部楼层
原帖由 laohe121 于 2006-9-15 22:41 发表
好象有人发过了吧


前面发过的是加过密的版本!
回复

使用道具 举报

I521 发表于 2006-9-15 22:59:40 | 显示全部楼层
这个就是4.0的另一个版本的  邀请吧...和那个好象不一样

还是习惯用那个了
回复

使用道具 举报

HY清风 发表于 2006-9-15 23:08:01 | 显示全部楼层
C 50、邀请注册插件FOR DZ5正式版
          https://discuz.dismall.com/thread-391521-1-2.html
C 59、邀请注册插件 for 5.0
         https://discuz.dismall.com/thread-390824-1-1.html
回复

使用道具 举报

5025488.net 发表于 2006-9-15 23:09:22 | 显示全部楼层

你就这么懒
code都不加
回复

使用道具 举报

520yuqi99 发表于 2006-9-15 23:21:33 | 显示全部楼层
invite.inc.php

有这个文件

没invite.php 这个文件
回复

使用道具 举报

articlestank 发表于 2006-9-15 23:49:48 | 显示全部楼层
:) :) :)
回复

使用道具 举报

83267556 发表于 2006-9-15 23:54:50 | 显示全部楼层
这个我是用不着了..
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-23 04:00 , Processed in 0.026505 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表