DZ 数据迁移问题
DZ 数据迁移问题
- 登录后方可回帖
15 个回复 | 最后更新于 2016-06-15
一般来说只需这四个数据表:
假设你的论坛数据表前缀是bbs_。
bbs_common_members
bbs_forum_posts
bbs_forum_thread
版块表是哪个我忘了,版块迁移成标签。
由于两者使用的密码加密方式一样,所以可以直接迁移。
回复#1 @ivanilla :
加密方式是一样的? DZ的密码表好像没有加盐。。。
回复#2 @agenge :
有的。
回复#3 @ivanilla :
多谢,如果加密方式一样,那迁移相对就简单多了。
https://www.94cb.com/t/3141#Post13432
这人迁移了,有问题可以找找他。
回复#3 @ivanilla :
回复#7 @agenge :
哦,不是完全一样,有区别:
DZ的uc_client/control/user.php:
$passwordmd5 = preg_match('/^\w{32}$/', $password) ? $password : md5($password); if(empty($user)) { $status = -1; } elseif($user['password'] != md5($passwordmd5.$user['salt'])) { $status = -2; } elseif($checkques && $user['secques'] != $_ENV['user']->quescrypt($questionid, $answer)) { $status = -3; } else { $status = $user['uid']; }
他的密码加密方式是先MD5密码一次,然后把结果加上salt再MD5一次。
CF的login.php:
if (!HashEquals($DBUser['Password'], md5($Password . $DBUser['Salt']))) { $Error = $Lang['Password_Error'];
CF的register.php:
$NewUserPassword = md5($Password . $NewUserSalt);
他的密码加密方式是密码加上salt MD5一次。
但是因为有人迁移成功,说明还是有办法解决的。
回复#9 @ivanilla :
这就需要改CF的代码才能解决,否则密码会不对。 但是,如果改CF的代码,这为以后的升级埋下一些隐患。
回复#11 @agenge :
直接找林先生啊。
回复#10 @ivanilla :
你搞错了,CF和Discuz! 的密码校验方式,是完全一样的。
回复 #14 @airoc :
不用找,自己手打啊。