discuz 论坛与主站同步登录
2013-08-28 16:40
162 查看
主站的登录判别是通过客户端的cookie的
还好,主域名是一样的,不然,通过的cookie实现同步登录估计就不行了
我用的是discuz X3
大概的思路逻辑是:
1、主站登录之后,用户去了论坛:
1、判断某个cookie 是否存在,比如is_login_key ,如果存在,则获取其值;
2、根据cookie值通过接口到主站获取此用户的信息;
3、查询discuz中是否存在此用户,如果存在,则获取其值,如果不存在则插入信息;
4、根据获取的值设置用户在discuz为登录状态;
主要更改的文件为./source/class/discuz/discuz_application.php:
主要是 $this->_init_autologin();
他的实体方法是:
my_func.php 文件中定义了调用主站的一些接口。
2、用户注册
注册的思路比较简单了,将用户的信息获取之后,调用主站的注册接口,如果返回成功,则在调用获取用户信息的接口,当然返回的信息中包含了login_key的值
加在./source/class/class_member.php文件中的 on_register方法
之后
request 方法是发送post/get请求的,网上一堆
3、用户在论坛上登录:
这个逻辑也比较简单了,就是根据用户的信息到主站去查询,如果存在,返回用户的信息,根据用户的信息判断是否存在,不存在则插入discuz的表中,然后设置其为登录状态:
./source/class/class_member.php的on_login方法的
之后
这样就基本上ok了
还好,主域名是一样的,不然,通过的cookie实现同步登录估计就不行了
我用的是discuz X3
大概的思路逻辑是:
1、主站登录之后,用户去了论坛:
1、判断某个cookie 是否存在,比如is_login_key ,如果存在,则获取其值;
2、根据cookie值通过接口到主站获取此用户的信息;
3、查询discuz中是否存在此用户,如果存在,则获取其值,如果不存在则插入信息;
4、根据获取的值设置用户在discuz为登录状态;
主要更改的文件为./source/class/discuz/discuz_application.php:
他的实体方法是:
2、用户注册
注册的思路比较简单了,将用户的信息获取之后,调用主站的注册接口,如果返回成功,则在调用获取用户信息的接口,当然返回的信息中包含了login_key的值
加在./source/class/class_member.php文件中的 on_register方法
3、用户在论坛上登录:
这个逻辑也比较简单了,就是根据用户的信息到主站去查询,如果存在,返回用户的信息,根据用户的信息判断是否存在,不存在则插入discuz的表中,然后设置其为登录状态:
./source/class/class_member.php的on_login方法的
相关文章推荐
- DiscuzNT 论坛与主站的同步登录与退出
- java整合discuz小结(实现与论坛同步登录等操作)
- Asp.Net站点整合Discuz论坛实现同步注册和单点登录
- discuz论坛整合ucenter免激活,同步登录,同步退出解决方案
- ASP.NET网站集成Discuz!NT 3.1论坛详细教程(同步注册和登录)
- java整合discuz小结(实现与论坛同步登录等操作)
- DiscuzNT 论坛与主站的同步登录与退出
- discuz论坛整合ucenter免激活,同步登录,同步退出解决方案(附源码)
- java整合discuz论坛同步注册同步登录小结
- ASP.NET网站集成Discuz!NT 3.1论坛详细教程(同步注册和登录)
- ASP.NET网站集成Discuz!NT 3.1论坛详细教程(同步注册和登录)
- Asp.Net站点整合Discuz论坛实现同步注册和单点登录
- 实现discuz门户与论坛不能同步登录的问题
- java和Discuz论坛实现单点登录,通过Ucenter(用户管理中心)
- 整合Ecshop与Discuz通讯成功,同步登录、退出不一致
- discuz使用之三——同步注册和同步登录
- java和Discuz论坛实现单点登录,通过Ucenter(用户管理中心)
- 在其他页面调用 Discuz 7.2 BBS 论坛会员登录信息
- java(jsp)整合discuz同步登录功能详解