discuz 应用之间的通信,如何调用用户注册接口?

摘要:discuz 应用之间的通信,如何调用用户注册接口?...

作者:LoveCode标签:discuz,应用,通信,用户注册,接口

discuz 应用之间的通信DEMO:

phpsso与ucenter通信成功后,XXX_ucenter_member表中的用户已经同步成功但是在 XXX_common_member中并没有此用户,所以只要在xxx_common_member中插入此用户就可以了,所以修改discuz/api /uc.php下的synlogin函数就可以了,修改为:

function synlogin($get, $post)
{ 
    global $_G; 

    if(!API_SYNLOGIN)
    { 
        return API_RETURN_FORBIDDEN; 
    } 

    header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"'); 

    $cookietime = 31536000; 
    $uid = intval($get['uid']); 
    $query = DB::query("SELECT uid, username, password FROM ".DB::table('common_member')." WHERE uid='$uid'"); 

    if ($member = DB::fetch($query)) 
    { 
        dsetcookie('auth', authcode("$member[password]\t$member[uid]", 'ENCODE'), $cookietime); 
    }else 
    { 
        $username = $get['username']; 
        $query = DB::query("SELECT uid, username, password, email FROM ".DB::table('ucenter_members')." WHERE username='$username'"); 
        $member = DB::fetch($query); 
        $password = $member['password']; 
        $email = $member['email']; 
        $ip = $_SERVER['REMOTE_ADDR']; 
        $time = time(); 
        $userdata = array( 
        'uid'=>$uid, 
        'username'=>$username, 
        'password'=>$password, 
        'email'=>$email, 
        'adminid'=>0, 
        'groupid'=>10, 
        'regdate'=>$time, 
        'credits'=>0, 
        'timeoffset'=>9999 
    )

    DB::insert('common_member', $userdata); 

    $status_data = array( 
        'uid' => $uid, 
        'regip' => $ip, 
        'lastip' => $ip, 
        'lastvisit' => $time, 
        'lastactivity' => $time, 
        'lastpost' => 0, 
        'lastsendmail' => 0 
    );
    
    DB::insert('common_member_status', $status_data); 
    DB::insert('common_member_profile', array('uid' => $uid)); 
    DB::insert('common_member_field_forum', array('uid' => $uid)); 
    DB::insert('common_member_field_home', array('uid' => $uid)); 
    DB::insert('common_member_count', array('uid' => $uid)); 
    DB::query('UPDATE '.DB::table('common_setting')." SET svalue='$username' WHERE skey='lastmember'"); 
    
    $query = DB::query("SELECT uid, username, password FROM ".DB::table('common_member')." WHERE uid='$uid'"); 
    if ($member = DB::fetch($query)) 
    { 
        dsetcookie('auth', authcode("$member[password]\t$member[uid]", 'ENCODE'), $cookietime); 
    } 
}
CopyRight © 2017 荒山本的官方网站 粤ICP备16049175号 All Right Service 网站地图(xml) 网站地图(html)