Discuz3.2 新用户插入数据库SQL

来源:互联网 发布:c语言预处理指令 大全 编辑:程序博客网 时间:2024/06/05 03:14

我们的网站要和Discuz整合到一起,有个新用户同步的需求,网络上很多的做法是用 UCenter的接口来做,反正最后都是插入SQL,笔者使用了直接操作数据库的方式,把操作的表和SQL整理了下,后面如果有时间做个SSO就省事了(熟悉了PHP之后。。)

准备

  • 版本:dz 3.2版本 ucenter1.6版本
  • 目标:插入普通用户,最小可用就行了,可以登录
  • 整合ucenter注册自动激活, 其实只是把其中的sql提取出来了
  • dz用户注册登录流程
  • dz表结构

SQL记录

注意⚠️:表名称前缀根据配置可能不同, 一共有8张表

SELECT *FROM pre_ucenter_members;-- UCenter用户数据表 uid, username, password, email, regip(默认写一个值), regdate(时间戳), salt(随机6位字母数字)SELECT *FROM pre_ucenter_memberfields;-- UCenter用户扩展信息数据表 插入 uidSELECT *FROM pre_common_member;-- 主用户表 插入的字段 email, username, password, emailstatus, regdate(时间戳)-- 得到uid再插入其它表SELECT *FROM pre_common_member_count;-- 用户数据统计 各种积分,动态等  插入 uidSELECT *FROM pre_common_member_field_forum;-- 用户论坛设置数据表  插入 uid SELECT *FROM pre_common_member_field_home;-- 用户家园设置数据表  插入 uidSELECT *FROM pre_common_member_profile;-- 用户个人资料数据表 插入 uid SELECT *FROM pre_common_member_status;-- 用户状态数据表 插入 uid-- 下面是插入一个普通用户的测试, 这里根据id自增,自己算出了uid,便于sql书写   -- lzz, 邮箱 lzz@126.com, 密码 xyz2541 -- 需要计算的密码 pre_common_member 密码为 md5(password)  2cf5c897f58ca21cac9bec93f46f6f53-- pre_ucenter_members salt yyy111 密码为 md5(md5(password)+salt) 4fab791987738fce5f11504a0fe2a342-- MYSQL mode 设置的比较严格,所以很多默认值要自己加上。。INSERT INTO pre_ucenter_members SET uid=7, username='lzz', `password`='4fab791987738fce5f11504a0fe2a342', email='lzz@126.com', regip='127.0.0.1', regdate=UNIX_TIMESTAMP(), salt='yyy111';INSERT INTO pre_ucenter_memberfields SET uid=7, blacklist='';INSERT INTO pre_common_member SET uid=7, username='lzz', `password`='2cf5c897f58ca21cac9bec93f46f6f53', email='lzz@126.com', emailstatus=1, regdate=UNIX_TIMESTAMP();INSERT INTO pre_common_member_count SET uid=7;INSERT INTO pre_common_member_field_forum SET uid=7, `medals`='', `sightml`='', `groupterms`='', `groups`='';INSERT INTO pre_common_member_field_home SET uid=7, `spacecss`='', `blockposition`='', `recentnote`='', `spacenote`='', `privacy`='', `feedfriend`='', `acceptemail`='', `magicgift`='', `stickblogs`='';INSERT INTO pre_common_member_profile SET uid=7, `bio`='', `interest`='', `field1`='', `field2`='',`field3`='', `field4`='', `field5`='', `field6`='', `field7`='', `field8`='';INSERT INTO pre_common_member_status SET uid=7;

在Discuz的数据库中插入到数据库之后,web端就能登录了,嘿嘿。

0 0
原创粉丝点击