热搜词
发表于 2012-1-8 20:27:23 | 显示全部楼层 |阅读模式
一、Discuz x2 后台删除用户误操作造成的后果
       我的论坛前几天出现UID数值最小的几千名用户(最老注册的)的主题贴被删,但是别人回贴没有删除,不知什么原因,正常的管理操作如果删主题贴的话,其它楼层的回贴都会一并删除的。不应该是这样的情况。

被删之前截图:



被删之后截图(主题贴没了,其它楼层在):



二、误操作后的后台访问记录

我怀疑是管理员在后台删除用户时误操作时造成的。于是我到后台看了一下之前的管理记录,在运行记录里发现有个管理员执行了如下的操作,代码如下,请高手帮忙看看!

后台运行记录=》系统记录=》后台访问截图:
01副本.gif

  1. GET={operation=clean; confirmed=确定; includepost=1; current=1000; pertask=1000; lastprocess=; uidarray=; chkall=on; deleteitem=allitem; }; POST={};
复制代码
  1. GET={operation=clean; confirmed=yes; includepost=yes; current=1000; pertask=1000; lastprocess=; username=; srchemail=; regdatebefore=; regdateafter=; postshigher=; postslower=; regip=; lastip=; lastvi ...
复制代码

代码解释:
members   用户管理
operation=clean;         操作= 清除
operation=search;       操作= 搜索
deleteitem=allitem;      删除项目=所有项目(论坛里的的所有贴子、头像、评论、留言)
uidarray={0=119703; };     被删的用户UID号为117849
confirmed=确定    确定删除
current=1000      当前的删除过的数量
pertask=1000    每个执行一次任务删除多少数量
includepost=1     删除用户所有数据
chkall=on;    检查所有
deleteitem=comment;    删除评论

三、分析相关误操作的过程

可能是管理员使用后台“清理”用户功能时,让程序删除UID号119703的用户,在删除的过程中,可能是因为用户数据较多、网速较慢,或是服务器繁忙等原因造成网页长时间无响应或是没有自动跳转。于是此管理员又点了一次提交按钮,或是后退网页,在没有刷新此网页的情况下,再次提交此删除用户操作,而此时的用户其实已经被删除,造成再次提交上去的删除用户指令,并没有指定用户,程序在删除用户的时候,自动从UID数值最小的用户(最老注册的)按升序删除,所以等你反应过来的时候,已经干掉了几千个元老级的用户。欲哭无泪啊,还是请做好日常数据库备份吧。

--------------------------------------------------------------------------------------------------------------------------------------
相关链接:
论坛部分会员的主题贴被删,但别人在回帖没有删,什么原因?
http://www.sq01.cn/forum.php?mod=viewthread&tid=6634

x1.5的0428补丁存在重大操作bug,可导致全站数据覆灭
http://www.sq01.cn/forum.php?mod=viewthread&tid=6636

X2 删除用户的BUG 情况很严重,后果很杯具
http://www.sq01.cn/forum.php?mod=viewthread&tid=6635

全部评论0
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-12-23 05:17 , Processed in 0.159591 second(s), 25 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team