尽管ThinkSNS提供了Ucenter之间用户信息(DISCUZ!)的同步办法,但是在使用上还是有一些不太方便的地方。例如需要用户在Ucenter的DISCUZ论坛中再次激活确认,增加了用户使用的复杂度。为此,需要更加彻底的用户数据同步办法,以下是我个人的解决方案。
ThinkSNS与Ucenter discuz论坛用户数据的整合同步方案
此处暂时略去500字……discuz以UCenter为核心,用户数据都存放在UCenter。开始走了弯路,论坛也有一张pre_common_member表,保存用户名和密码,不过这里的密码是随机数MD5加密值。真正密码在pre_ucenter_members中,密码使用两次MD5加密,而MD5的salt也存放在此表中salt字段。
涉及数据表
表1 ts_ucenter_user_link:ThinkSNS与Ucenter discuz用户关系关联表。
表2 ts_user ThinkSNS用户信息表
表3 ucenter_u:Ucenter用户信息表
Ucenter用户密码加密方法
$salt = substr(uniqid(rand()), -6);//uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID。 $password = md5(md5($password).$salt);
更多信息请查看IT技术专栏