crx349 发表于 2013-12-19 20:25:01

无需激活直接同步登入discuz,php代码(直接可用)


方法:
打开discuz/api/uc.php
synlogin方法(180行)处,往下找到
if(($member = getuserbyuid($uid, 1))) {
    dsetcookie('auth', authcode("$member\t$member", 'ENCODE'), $cookietime);
改为:
if(($member = getuserbyuid($uid, 1))) {
    dsetcookie('auth', authcode("$member\t$member", 'ENCODE'), $cookietime);
} else {
    if(!function_exists('uc_get_user')) {
      loaducenter();
    }
    $user = uc_get_user($uid, 1);
    if($user) {
      $time = time();
      DB::query("REPLACE INTO ".DB::table('common_member')." SET `uid`='{$user}' , `username`='{$user}' , `password`='".md5(random(10))."' , `email`='{$user}' , `adminid`='0' , `groupid`='10' , `regdate`='{$time}' , `emailstatus`='0' , `credits`='0' , `timeoffset`='9999'");
      DB::query("REPLACE INTO ".DB::table('common_member_status')." SET `uid`='{$user}' , `regip`='{$_G['clientip']}' , `lastip`='{$_G['clientip']}' , `lastvisit`='{$time}' , `lastactivity`='' , `lastpost`='0' , `lastsendmail`='0'");
      DB::query("REPLACE INTO ".DB::table('common_member_count')." SET `uid`='{$user}' , `extcredits1`='0' , `extcredits2`='0' , `extcredits3`='0' , `extcredits4`='0' , `extcredits5`='0' , `extcredits6`='0' , `extcredits7`='0' , `extcredits8`='0'");
      DB::query("REPLACE INTO ".DB::table('common_member_profile')." SET `uid`='{$user}'");
      DB::query("REPLACE INTO ".DB::table('common_member_field_forum')." SET `uid`='{$user}'");
      DB::query("REPLACE INTO ".DB::table('common_member_field_home')." SET `uid`='{$user}'");
      DB::query("UPDATE ".DB::table('common_stat')." SET `register`=`register`+1 WHERE `daytime` = '".date('Ymd', $time)."'");
      if(($member = getuserbyuid($uid, 1))) {
            dsetcookie('auth', authcode("$member\t$member", 'ENCODE'), $cookietime);
      }
    }
}
页: [1]
查看完整版本: 无需激活直接同步登入discuz,php代码(直接可用)