IsaacZ 发表于 2011-8-16 17:19:26

Discuz! X2 批量修改会员用户组为另一用户组的方法

公式:UPDATE 存放会员数据的表 SET 存放会员组别的字段 = REPLACE (存放会员组别的字段, '准备修改的会员组级别ID', '修改后的会员组级别ID');


示例:UPDATE pre_common_member SET groupid = REPLACE (groupid, '8', '10');


上面这句意思是:批量将“等待验证会员”替换成“新手上路”级别。


实际应用:

为了防范垃圾帐户,点拨论坛要求刚刚注册的新会员必须在24小时内完成新手专用任务,逾期则删除其账号,但是后来发现,同样的垃圾账号会再次注册进来,令人十分郁闷。单凭手工搜索此类帐户来删除肯定是低效的,所以就想通过一串SQL代码将“未完成新手任务”用户组的帐户批量添加到“禁止访问”用户组。在Discuz官方论坛咨询了一下,成功解决了这个问题。代码如下:

UPDATE pre_common_member SET groupid = REPLACE (groupid, '9', '5') WHERE regdate < ( unix_timestamp( now( ) ) -86400 );
其中 WHERE regdate < ( unix_timestamp( now( ) ) -86400 ); 这段代码定义了从当前时间往前推24小时的时间。



艺恒 发表于 2011-8-17 09:33:59

站长,论坛设置的功能你单独保存就好了,没必要在论坛公开吧!

IsaacZ 发表于 2011-8-17 09:48:35

艺恒 发表于 2011-8-17 09:33 static/image/common/back.gif
站长,论坛设置的功能你单独保存就好了,没必要在论坛公开吧!

点拨论坛是IsaacZ与大家分享自己学习心得的地方,之所以将这些设置也发布出来,是希望更多的站长能借鉴我的经验,共同维护良好的网络环境。
页: [1]
查看完整版本: Discuz! X2 批量修改会员用户组为另一用户组的方法