destoon這個系統(tǒng)用了也有一段時間了,剛做一個同步登錄的功能,那就用ucenter來做中介,添加多個應(yīng)用然后使多個站點有同步登錄退出的功能.
uc添加應(yīng)用,這個不難,destoon官網(wǎng)上也有相關(guān)的教程.
幾個應(yīng)用添加完畢以后,注冊一個帳號測試,問題來了.
注冊完以后,注冊頁面沒有跳轉(zhuǎn),也沒有提示,但這個會員是注冊成功了,為什么會沒有跳轉(zhuǎn)呢,這個又的去問度了,結(jié)果找到了……
有人經(jīng)過斷點測試發(fā)現(xiàn)這是因為在Destoon的api/ucenter/control/user.php 文件中的第83行有一個寫Dscuz系統(tǒng)數(shù)據(jù)庫的函數(shù)在默認(rèn)執(zhí)行:function onregbbs() 函數(shù)名,此函數(shù)功能就是向dz論壇中添加一條注冊信息,函數(shù)具體內(nèi)容就不貼了,在找到注冊提交頁面在destoon的注冊信息處理文件module/member/register.inc.php中有這樣一段代碼:
- if($MOD['passport'] == 'uc') {
- $uid = uc_user_register($passport, $post['password'], $post['email']);
- if($uid > 0 && $MOD['uc_bbs']) uc_user_regbbs($uid, $passport, $post['password'], $post['email']);
- }
直接屏蔽第二條語句,if($uid > 0 && $MOD['uc_bbs']) uc_user_regbbs($uid, $passport,$post['password'], $post['email']);問題就解決了.
至于多個站點同時登錄,退出也還沒有來的及測試,大致方向應(yīng)該沒有錯誤.
新聞熱點
疑難解答