基于UCenter用户中心把第三方网站的会员与Discuz关联起来

[文章作者:磨延城 转载请注明原文出处: https://mo2g.com/view/106/ ]

然而问题就来了,怎么把现有网站的用户跟discuz关联到一起呢?后来一同事跟我提到Comsenz旗下UCenter(用户中心),跟我说它能无缝整合多个网站的会员,很容易就能解决这一问题,然后把UCenter的开发文档链接发给我.于是我这几天就带着问题开始学习UCenter究竟是怎么样实现的无缝管理用户的.

公司的业务发展跟原计划中的一样顺利,伴随着VIP会员的与日俱增,原网站的用户体验越显得苍白没劲,当务之急就是要想办法完善用户体验,加强用户粘度,让用户在网站中形成一个有形无形的关系链,才能更好的留住用户。在用户空间、互动社区这一块,discuz是当前最好的选择。

然而问题就来了,怎么把网站现有的用户跟discuz整合到一起呢?后来一同事跟我提到Comsenz旗下UCenter(用户中心),跟我说它能无缝整合多个网站的会员,很容易就能解决这一问题,然后把UCenter的开发文档链接发给我。于是我这几天就带着问题开始学习UCenter究竟是怎么样实现的无缝管理用户的。

也许是同事过分的神话,又或者是我没接触过discuz的原因,一开始我真的相信UCenter可以自动化的实现无缝管理第三方用户数据,直到碰了壁,我才踏踏实实的过一了遍源代码,长了记性:还是亲妈比较亲。类似我现在维护的网站,对于UCenter来说,属于第三方网站,要想融入进来,还是得做一些代码调整。

下边我讲一讲UCenter的运作原理,至于具体的二次开发,还得根据自己的需求来进行。其实只要掌握了UCenter运作流程,就可以大显身手了。这就看看下边的场景:

1)原有网站A,已有大量用户

2)基于Discuz,新增用户空间、互动社区

3)用户管理中心UCenter

我们需要实现如下功能:

1)网站A的老用户可以无缝融入并使用Discuz的功能

2)在Discuz注册的用户也可以无缝融入并使用网站A,并且保证用户是唯一的

3)用户可以在网站A与Discuz之间实现同步登录跟注销

UCenter用户中心为了完成统一管理,大致按照下边的处理办法实现

1)把已有的会员相关数据导入UCenter的用户数据表

2)新用户注册都得经过UCenter的审核,网站的注册程序再根据审核结果进行处理,以保证用户名或邮箱的唯一性

3)用户的登录跟注销操作都汇报给UCenter,UCenter用户中心再通知所有的网站程序做进一步处理

上述最关键的第一步,就是把用户导入UC中心,没有这些数据,即使UC后台显示通信成功,也是白搭。

默认的数据表为uc_member,需要的插入的字段为uid、username、password、email、regip、regdate、salt,下边简单讲一下password字段。

password字段的值存储的是密码,加密方式为md5(md5(原始密码)+6位随机字符),如下

$salt = '123456';//随机的6位字符
$password = md5( md5('123456') . $salt );

待续。。


基于UCenter用户中心把第三方网站的会员与Discuz关联起来(续1)

基于UCenter用户中心把第三方网站的会员与Discuz关联起来(续2)

discuz相关的文章都在这里

    评论:

    1. unknown 回复2015年06月08日 01时07分
      磨者
      不错的文章,内容欢风华丽.禁止此消息:nolinkok@163.com
      西门塔尔牛 http://www.xmten.com/

    2. 东子 回复2015年09月09日 18时25分
      磨者
      待续。。就完事了?

        磨延城 @东子 回复2015年09月09日 20时25分

        我以为没人看,就先放着了
        时间一长,又忘了
        我再找时间补充吧

        磨者 788 @磨延城 回复2015年09月10日 20时50分
        磨者
        期待后续!博主

        CodeMonkey @磨者 788 回复2015年12月18日 09时52分
        磨者
        大哥,能否教我~~~等着后续呢

    3. 我来说两句:

        切换  

      磨途歌检测发现,您当前使用的浏览器版本过低,要想使用画板模式,请先更新浏览器

        切换  

      磨途歌随机验证码