当前位置:Gxlcms > PHP教程 > diacuz登录状态是怎么存储的?

diacuz登录状态是怎么存储的?

时间:2021-07-01 10:21:17 帮助过:6人阅读

现在需要用到单点登录对dz论坛进行整合,原理是这样的:
通过单点登录实现用户的登录->单点登录验证通过返回用户名给dz->通过用户名获取用户uid->通过uid实现dz也已经登录,现在不知道最后一步“通过uid实现dz也已经登录”怎么实现。我用户名我用过cookie保存之后可以跳转到用户激活的状态页面,如图: 而不是用户已经登录成功的状态,如图: 而且uid也得不到,请问怎么根据uid设置dz整个论坛的登录成功状态???急!!!


回复讨论(解决方案)

dz 的用户管理是通过 uc 实现的,而 uc 就是为单点登录而设计的
你只需在 uc 的控制面板中做些设置,通过 uc 的客户端函数就可实现单点登录了

dz 的用户管理是通过 uc 实现的,而 uc 就是为单点登录而设计的
你只需在 uc 的控制面板中做些设置,通过 uc 的客户端函数就可实现单点登录了


你好,我是用的自己的单点登录,登录成功之后返回给dz用户名,然后设置dz中的用户状态,用户的用户名获取到了$uid,但是还是跳转到激活状态,请问怎么可以让页面显示正常登录成功之后的状态呢?不知道为什么我设置的$_G['uid']其他页面得不到的!!!帮忙看下是什么问题吧,多谢啦!!!

$_G['uid']是在那用的,你自己的页面吗,是的话,当然不行了

不是在我自己的页面用的,还是dz原来的页面用的。问下为什么在我自己的页面不能用$_G['uid']的?

不是在我自己的页面用的,还是dz原来的页面用的。问下为什么在我自己的页面不能用$_G['uid']的?


这个我刚做过,比较了解,dz登录这块的判断其实是通过cookie实现的,而且验证的时候还是对加密过的密码进行核对的。
dsetcookie('auth', authcode("{$member['password']}\t{$member['uid']}", 'ENCODE'), $cookietime, 1, true);		//这里的passwod是pre_common_member表中经过加密后的密码			dsetcookie('loginuser',$username);			dsetcookie('activationauth');			dsetcookie('pmnum');

人气教程排行