|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
解决Discuz X整合其他系统后同步问题
本文关键字词:同步登陆,同步注册,同步注销,discuz
有很多程序整合discuz后,UC中显示通信成功,在整合端登陆注销,DX也会跟随同步登陆注销
但是反过来在DX中登陆注销,整合端反而不会跟随同步登陆注销。实在是很恶心!!!
后查询发现,原来是dx登陆注册的时候没有返回给UC状态。
所以暂时解决方案如下:
DX的client.php文件中(默认在uc_client目录下):
找到310行左右
- function uc_user_synlogin($uid) {
- $uid = intval($uid);
- if(@include UC_ROOT.'./data/cache/apps.php') {
- if(count($_CACHE['apps']) > 1) {
- $return = uc_api_post('user', 'synlogin', array('uid'=>$uid));
- } else {
- $return = '';
- }
- }
- return $return;
- }
- function uc_user_synlogout() {
- if(@include UC_ROOT.'./data/cache/apps.php') {
- if(count($_CACHE['apps']) > 1) {
- $return = uc_api_post('user', 'synlogout', array());
- } else {
- $return = '';
- }
- }
- return $return;
- }
复制代码
修改为:
- function uc_user_synlogin($uid) {
- $uid = intval($uid);
- if(@include UC_ROOT.'./data/cache/apps.php') {
- if(count($_CACHE['apps']) > 1) {
- $return = uc_api_post('user', 'synlogin', array('uid'=>$uid));
- } else {
- $return = uc_api_post('user', 'synlogin', array('uid'=>$uid));
- }
- }
- return $return;
- }
- function uc_user_synlogout() {
- if(@include UC_ROOT.'./data/cache/apps.php') {
- if(count($_CACHE['apps']) > 1) {
- $return = uc_api_post('user', 'synlogout', array());
- } else {
- $return = uc_api_post('user', 'synlogout', array());
- }
- }
- return $return;
- }
复制代码
这样即可实现双向同步登陆注销了。具体有什么后遗症没具体测试,有心的同学可以测试测试。
|
|