通常采用ucenter来做中介,添加多个应用然后使多个站点有同步登录退出的功能。
ucenter添加应用并不难,destoon官网上也有相关的教程。
但是很多朋友在几个应用添加完毕以后,注册一个帐号测试的时候,问题就出现了,注册完以后,注册页面没有跳转,也没有提示,但这个会员是注册成功了。为什么没有跳转呢?
经过断点测试发现这是因为在Destoon的api/ucenter/control/user.php 文件中的第83行有一个写Dscuz系统数据库的函数在默认执行:function onregbbs() 函数。此函数功能就是向dz论坛中添加一条注册信息。在找到注册提交页面在destoon的注册信息处理文件module/member/register.inc.php(大约125行)中有这样一段代码
1
2
3
4
|
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' ]); } |
直接屏蔽第二条语句:
1
|
//if($uid > 0 && $MOD['uc_bbs']) uc_user_regbbs($uid, $passport, $post['password'], $post['email']); |
问题就解决了。