|
呵呵 已经解决6.0.0升级到6.1.0后在后台控制面板出现
待处理事项: 等待审核的会员数(x)而且在后台并无该会员的情况。
个人免责:建议先备份数据库。(虽然没有风险,但是还是保险起见,否则丢失任何数据与本人无关。)
最后一条SQL语句为本问题的解决方法。
一.分析
(1)
该查询结果出自/admin/home.inc.php 139行
1. ($membersmod ? '<a href="admincp.php?action=moderate&operation=members">'.lang('home_mod_members').'</a>(<em class="lightnum">'.$membersmod.'</em>)' : '').
复制代码
(2)
上句中变量"membersmod"出自该文件78行数据库查询语句
1. $membersmod = $db->result_first("SELECT COUNT(*) FROM {$tablepre}validating WHERE status='0'");
复制代码
(3)
{$tablepre}为Discuz! 之数据库前缀,默认为cdb_(以下都以cdb_为前缀,如果你修改过前缀,则再下面语句中,将cdb_替换为你修改后的数据表前缀),所以该语句为
1. SELECT COUNT(*) FROM cdb_validating WHERE status='0'
复制代码
顺藤摸瓜,本人使用PhpAdmin,查询数据表cdb_validating.
1. SELECT * FROM `cdb_validating` WHERE status='0'
复制代码
霍霍,果然是本人后台管理所说的7条(这时记下这几条记录的uid)。哇哈哈。。。。
(4)
然后在cdb_menbers表查找刚刚记录下的uid。
执行语句
1. SELECT * FROM `cdb_members` WHERE uid=‘xx’ OR uid= ‘xx’ OR....
复制代码
发现cdb_members表中没有这几条记录。
这样,就解释了为什么我们在后台看到有等待审核的会员,但是却找不到这些会员的原因.
就是因为数据表 cdb_members和cdb_validating记录不同步.至于为什么不同步的原因就不清楚了
二.解决方法
既然找到了,那么我们就可以下手去处理他们了.
本人在PhpAdmin中执行这条语句
这个文章的中心,精华,画龙点睛之处,,,,,,,,,
1. DELETE FROM `cdb_validating` WHERE status='0'
复制代码
完成后刷新后台,发现等待审核的会员数(x)没有了。
搞定,完成! 睡觉去
圣徒说明:有一个情况需要注意,直接在PhpAdmin执行后,等待审核的会员确实没有了,但是随之而来的是论坛打不开的情况,出现错误:1045,在后台sql管理中,重新改下数据库密码即可!
错误编号:1045
问题分析:数据库用户名或密码错误,导致程序没有权限连接 MySQL 数据库。
解决方法:1、如果你是虚拟主机用户,请联系空间服务商询问正确的 MySQL 数据库用户名和密码,然后修改论坛根目录下 config.inc.php 中关于数据库的配置信息。如果是在安装过程中出现这个问题,可以重新填写正确的帐号信息继续安装。 |
|