临时试了个方法,貌似ok
- if ($ucresult[0]== -2) {^M
- $member = $db->fetch_first("SELECT m.uid AS discuz_uid, m.username AS discuz_user, m.password AS discuz_pw, m.secques AS discuz_secques,^M
- m.adminid, m.groupid, m.styleid AS styleidmem, m.lastvisit, m.lastpost, u.allowinvisible ,ipbinfo.pass_hash, ipbinfo.pass_salt^M
- FROM {$tablepre}members m LEFT JOIN {$tablepre}usergroups u USING (groupid)^M
- LEFT JOIN `{$tablepre}member_ipbinfo` `ipbinfo` ON `ipbinfo`.`userid`=`m`.`uid`^M
- WHERE m.$field='$username'");^M
- if($member['pass_hash'] == md5(md5($member['pass_salt']).md5($password))) {^M
- uc_user_edit($username, md5($member['pass_salt']).md5($password), $password, $emailnew, 1);^M
- $ucresult = uc_user_login($username, $password, $loginfield == 'uid');^M
- }^M
- //以下新增代码
- if ($member['discuz_pw'] == md5($password)) {
- uc_user_edit($username, md5($password), $password, $emailnew, 1);
- $ucresult = uc_user_login($username, $password, $loginfield == 'uid');
- }
- //结束
- }
复制代码 |