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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

为Discuz!6.1增加推荐人记录查询功能

[复制链接]
cibill 发表于 2008-5-26 19:01:12 | 显示全部楼层 |阅读模式
插件发布
插件名称: 为Discuz!6.1增加推荐人记录查询功能
插件来源:
适用版本: Discuz! 6.1
语言编码: GBK简体 
最后更新时间:
插件作者: CiBill
插件简介:   论坛推广中心一直是很多论坛都有安装的热门插件之一,但是由于Discuz!系统本身没有记录具体的推荐人,导致有部分用户投机取巧,利用代理,ADSL等违规手段注册小号骗取推广积分,影响推广效果及推广活动的公平性。

  经过考虑,添加了在注册的时候推荐人也同时记录到数据库中,并在管理后台用户编辑增加推荐人查询这个功能。升级后,后台用户管理可以通过推荐人字段查找到该推荐人的所有下线ID,方便进行统计,也能够一定程度的防止刷积分的行为。
Title: 为Discuz!6.1增加推荐人记录查询功能
Auther: CiBill
Date: 2008-05-26

演示地址:http://www.ifoxes.cn

注意:本版只适合于 Discuz! 6.1.0正式版!6.0版请到以下地址下载:
https://discuz.dismall.com/viewthread.php?tid=862017

如果您没有对register.php 及 members.inc.php 及 admincp.lang.php 进行过更改请直接上传文件覆盖。

更新前请做好备份!

  论坛推广中心一直是很多论坛都有安装的热门插件之一,但是由于Discuz!系统本身没有记录具体的推荐人,导致有部分用户投机取巧,利用代理,ADSL等违规手段注册小号骗取推广积分,影响推广效果及推广活动的公平性。

  经过考虑,添加了在注册的时候推荐人也同时记录到数据库中,并在管理后台用户编辑增加推荐人查询这个功能。升级后,后台用户管理可以通过推荐人字段查找到该推荐人的所有下线ID,方便进行统计,也能够一定程度的防止刷积分的行为。


  该升级补丁涉及1个数据表,及3个文件。如果您喜欢自己动手,请按以下方法进行升级:

手动升级方法:
=================================================
1、升级数据表members,增加fromuser字段:
//红色部分如果你修改过Discuz!6.1的数据库表前缀,请更改为你的标前缀。
ALTER TABLE `cdb_members` ADD `fromuser` varchar(15) NOT NULL default '';


2、修改register.php,增加推荐人记录代码:
查找:
$db->query("INSERT INTO {$tablepre}members


在其上方添加代码:
        if($fromuid) {
                $query = $db->query("SELECT username FROM {$tablepre}members WHERE uid='$fromuid'");
                if($db->num_rows($query)) {
                        $fromuser = $db->result($query, 0);
                }
        }


查找:
$db->query("INSERT INTO {$tablepre}members (uid, username, password, secques, gender, adminid, groupid, regip, regdate, lastvisit, lastactivity, posts, credits, extcredits1, extcredits2, extcredits3, extcredits4, extcredits5, extcredits6, extcredits7, extcredits8, email, bday, sigstatus, tpp, ppp, styleid, dateformat, timeformat, pmsound, showemail, newsletter, invisible, timeoffset)
                VALUES ('$uid', '$username', '$password', '$secques', '$gendernew', '0', '$groupinfo[groupid]', '$onlineip', '$timestamp', '$timestamp', '$timestamp', '0', $initcredits, '$email', '$bday', '$sigstatus', '$tppnew', '$pppnew', '$styleidnew', '$dateformatnew', '$timeformatnew', '$pmsoundnew', '$showemailnew', '$newsletter', '$invisiblenew', '$timeoffsetnew')");


将其修改为:
$db->query("INSERT INTO {$tablepre}members (uid, username, password, fromuser, secques, gender, adminid, groupid, regip, regdate, lastvisit, lastactivity, posts, credits, extcredits1, extcredits2, extcredits3, extcredits4, extcredits5, extcredits6, extcredits7, extcredits8, email, bday, sigstatus, tpp, ppp, styleid, dateformat, timeformat, pmsound, showemail, newsletter, invisible, timeoffset)
                VALUES ('$uid', '$username', '$password', '$fromuser', '$secques', '$gendernew', '0', '$groupinfo[groupid]', '$onlineip', '$timestamp', '$timestamp', '$timestamp', '0', $initcredits, '$email', '$bday', '$sigstatus', '$tppnew', '$pppnew', '$styleidnew', '$dateformatnew', '$timeformatnew', '$pmsoundnew', '$showemailnew', '$newsletter', '$invisiblenew', '$timeoffsetnew')");



3、修改用户管理页面\admin\members.inc.php,增加推荐人查找功能:
查找:
showtagfooter('tbody');


在其上方添加代码:
showsetting('members_search_fromuser', 'fromuser', $fromuser, 'text');


查找:
$conditions .= $operation == 'newsletter' && (submitcheck('submit') || submitcheck('sendsubmit', 1)) ? " AND newsletter='1'" : '';


在其上方添加代码:
$conditions .= $fromuser !=''?" AND fromuser LIKE '".trim($fromuser)."%'" : '';


查找:
"&birthday=".rawurlencode($birthday);


代码修改为:
"&birthday=".rawurlencode($birthday)."&fromuser=".rawurlencode($fromuser);


打开templates/default/admincp.lang.php,查找
'members_search_birthday' => '用户生日:',


在其下方添加代码:
        'members_search_fromuser' => '推荐人:',
        'members_search_fromuser_comment' => '可使用通配符 *',


至此,所有修改完成。

查询方法:
管理后台 --> 用户 --> 用户管理 --> 更多选项-->推荐人

搜索后列出满足条件的所有由该用户推荐注册的用户。

[ 本帖最后由 cibill 于 2008-5-26 19:02 编辑 ]

本帖子中包含更多资源

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

x
 楼主| cibill 发表于 2008-5-26 19:02:39 | 显示全部楼层
两个附件为完全一样的插件,有钱的朋友支持一下,哈

Discuz!6.0的修改方法请参照:
https://discuz.dismall.com/viewthread.php?tid=862017

另外推荐一下我的另一个插件,两个配合效果更佳。
插件名称:为Discuz!6.1增加完整用户访问IP记录功能后台版:
插件地址:https://discuz.dismall.com/viewth ... highlight=%2Bcibill

[ 本帖最后由 cibill 于 2008-5-26 19:06 编辑 ]
回复

使用道具 举报

I521 发表于 2008-5-26 19:15:13 | 显示全部楼层
多谢。。。。。。。。。
回复

使用道具 举报

kiss8 发表于 2008-5-26 19:54:18 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

0215 发表于 2008-5-26 23:38:02 | 显示全部楼层
楼主。截个图好不
回复

使用道具 举报

sd_xiaojia 发表于 2008-5-26 23:52:18 | 显示全部楼层
谢谢了。。:)
回复

使用道具 举报

紫云杉 发表于 2008-5-27 08:52:35 | 显示全部楼层
回复

使用道具 举报

〓偉◎耔〓 发表于 2008-5-27 10:21:04 | 显示全部楼层
还没有升级...占位..
回复

使用道具 举报

重生。 发表于 2008-5-27 10:30:39 | 显示全部楼层
应该像6.0那样有自动安装卸载程序
回复

使用道具 举报

cobob 发表于 2008-5-27 11:00:05 | 显示全部楼层
搜索的时候,  

我想搜索会员 刘二狗 的推荐记录

那么
用户名文本框里填应该填什么?  是不是就填写 刘二狗
主用户组选项里选什么?   是不是就选择 无限制
推荐人文本框里填应该填什么?  是不是就填写 刘二狗 还是 *

可不管我怎么填写 搜索结果都是0

刘二狗 是有推荐记录的

[ 本帖最后由 cobob 于 2008-5-27 11:01 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-15 15:13 , Processed in 0.044910 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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