动网论坛DVBBS转换成Discuz!后老用户无法登录的问题
Categories
Archives
Links
  • baidu

动网论坛DVBBS转换成Discuz!后老用户无法登录的问题

Published on Thursday, September 14th, 2006 2:11 pm GMT
Category: Programming

  问题状况:动网论坛DvBBS7.1成功转换成Discuz!5.0后,原来的老用户无法登录论坛,提示为密码错误。

  解决方法:打开论坛根目录下logging.php文件,找到:

$member = $db->fetch_array($query);

  在这段代码下添加:

$tempstr = $md5_password;
if (strlen($member[’discuz_pw’]) == 16){
$md5_password = substr($md5_password,8,16);
}

  继续查找:

if($member[’discuz_uid’] && $member[’discuz_pw’] == $md5_password) {

  在这段代码下添加:

if (strlen($member[’discuz_pw’]) == 16){
$db->query(”UPDATE {$tablepre}members SET password=’$tempstr’ WHERE uid=’$member[discuz_uid]’”);
}

  这样修改以后,老用户第一次登录会出现如下状况:登录成功后立即自动跳出;但是当再次登录,就一切正常了。

  原因分析:这是因为Discuz!和动网DvBBS存储用户密码的方式不同造成的,Discuz采用32位MD5加密码,而DvBBS是采用16位MD5加密码,由于算法的不同,所以造成不能成功登录。

发表评论

动网论坛DVBBS转换成Discuz!后老用户无法登录的问题

上一篇:PHP不支持短标签导致安装Discuz论坛错误
下一篇:Discuz论坛URL静态化服务器环境的设置

Links