本文主要内容

  • 重新写discuz的注册接口
  • 从原系统进入论坛自动注册并登录

咔咔之前没有使用过discuz,本文只是我自己的解决方案,要是有更好的实现方式可以一起交流交流

先看看系统本来的注册源码

  • 点击注册后请求的是upload/member.php 这个文件
  • 接着对请求的register进行验证
  • 然后就会去加载./source/module/member/member_'.$mod.'.php
  • mod就是register

  • 接着就会进入到upload/source/module/member/member_register.php
  • 可以看到实例化了一个register_ctl类
  • 然后调用了on_register方法

  • 到了upload/source/class/class_member.php这个文件就可以看到注册,登录,退出等等接口
  • 因为本案例需要实现的是不可在论坛系统上注册
  • 也就是说原系统的用户进入论坛后自动注册,并且登录
  • 为了保证数据不错乱把注册接口直接给干掉,然后重写一个登录接口接口

实现原系统进入论坛自动注册和登录

  • 实现步骤
  • 不管在文档还是查资料都可以知道用户注册用的是upload/uc_client/client.php 这个里边的uc_user_register这个方法
  • uc_user_register这个方法会把用户信息存到pre_ucenter_members这个表里
  • 然后还需要一次同步数据到pre_common_member这个表里
  • 知道了以上写这个就很简单了
  • 以下是实现代码,暂且还没有连接原系统的数据库,做了一个假数据来测试
   function on_login (){$data     = ['username' => 'kaka', 'u_oriPassword' => 123456];$username = $data['username'];# 根据token查询用户信息$members = DB::fetch_all("select * from pre_common_member where username = '$username' limit 1");$member = empty($members[0]) ? '' : $members[0];if($members){setloginstatus($member,315360000);showmessage('login_succeed', 'forum.php',array('username' => $username));}else{$uid = uc_user_register($data['username'], $data['u_oriPassword'], $email = '');if ($uid > 0) {# 然后根据用户信息在  pre_ucenter_members  表根据用户名进行查询$uc_members = DB::fetch_all("select * from pre_ucenter_members where username = '$username' limit 1");if($uc_members){# 注册登录  同步用户$uc_members = empty($uc_members[0]) ? '' : $uc_members[0];if (!empty($uc_members)) {$com_mem_data = array('email' => $uc_members['email'], 'username' => $uc_members['username'], 'password' => $uc_members['password'], 'groupid' => $define_group_id, 'regdate' => $uc_members['regdate'], 'timeoffset' => 9999);DB::insert('common_member', $com_mem_data);setloginstatus($member,315360000);showmessage('login_succeed', 'forum.php',array('username' => $username));}showmessage('网络错误','http://localhost/forum/upload/?mobile=2');}}}}

测试

可以看到现在是一个退出状态

点击登录

然后就实现了用户从原系统对接到论坛自动注册和登录

博主联系方式欢迎交流

【Discuz】原系统进入论坛自动注册并进行登录相关推荐

  1. 抓包思路杂记-某论坛自动注册抓包思路分析(总结)

    最近在搞某论坛自动化注册工具,这里只记录下思路,不涉及细节分析的过程及代码. 在此做个笔记方便日后进行查阅和分析: 这里的抓包软件分析都是使用Fiddler,所有的协议都是基于HTTP协议 1. 首先 ...

  2. php 防注册机,discuz论坛自动注册机 伪造注册会员数

    [php]代码库 // 注册的名字 $rando_first_name = array( '暮子','旷度','配','累','鸟毳','斋宇','泛云','沙锅','沃漏','油蛉','深宪','泉 ...

  3. 【Discuz】如何实现自动注册登录

    本文实现功能: 1.从原有系统进入论坛自动登录和注册 2.实现弹框在本页面,不进行跳转 3.js在页面加载时直接发起注册请求 这个功能之前使用的uc_user_register这个函数来处理的,但是今 ...

  4. 雅虎邮箱账号防自动注册验证码系统被攻破

    2008年02月28日 08:27  赛迪网 作者:Thomas Claburn 文/刘亚萌 译 如果一个新的应用软件被公布到网络上,它可能会迫使雅虎和其他公司花费更多资金,用在防御垃圾广告邮件的发送 ...

  5. Asp.Net站点整合Discuz论坛实现同步注册和单点登录

    最近在一个小站中整合了Discuz论坛,查阅了些资料后实现了同步注册和单点登录. Discuz是以虚拟目录的方式加载网站中,整合Discuz到网站中进行安装要注意一下几个问题: Discuz所在的目录 ...

  6. winpe修复改linux工具,利用WinPE修改原系统注册表来修复系统

    利用WinPE修改原系统注册表来修复系统 发布时间:2014-05-23 11:23:18   作者:佚名   我要评论 我们的电脑总是会遇到各种各样的问题,最好用的方式就是电脑重装,不过还有一个利用 ...

  7. 如何实现游戏陪玩系统源码中注册验证码的自动填写功能

    新用户在注册登录游戏陪玩系统源码时往往需要进行短信验证,如果没有验证码自动填写功能则需要用户自行切换软件进行填写,无异于增添了许多步骤,会影响到用户的使用体验,所以今天我们主要来说一说如何实现游戏陪玩 ...

  8. Zabbix监控系统自动发现/自动注册

    案例概述 ■公司刚刚搭建完Zabbix,现在需要对后续的服务器添加监控,由于公司有几百台服务器,因此使用自动发现或者自动注册来批量添加服务器,并且配置好邮件报警用于及时发现服务器问题.但是由于Zabb ...

  9. Discuz论坛 自动加好友留言程序

    目录 [隐藏] 1 思路: 2 代码: 2.1 登录,获取Cookie: 2.2 获取FormHash: 2.3 发送加好友请求并留言: 思路: 一波未平一波又起, 拿到这个需求的时候对我来说还是有挑 ...

最新文章

  1. B站超全分享!2万人收藏的免费计算机科学速成课
  2. c语言对齐方式研究笔记
  3. QT系统性总结(推荐新手看)
  4. 我们需要StringBuffer么?
  5. DDD领域驱动实践记录
  6. 文献记录(part79)--光学影像序列中基于多视角聚类的群组行为分析
  7. sklearn自学指南(part41)--使用手册的目录
  8. php强制对齐,[强迫症福利] 使用 PHPStorm 对齐数组的键值对
  9. IT行业里有这么多聪明人,他们之间的区别在哪里?
  10. c语言编程计算平分,用C语言编程平均分数
  11. 机房三维(3D)监控系统和机房可视化动力环境监控系统两者有什么特点?
  12. javascript基础修炼(8)——指向FP世界的箭头函数
  13. 怎么获取php内的参数,php如何获取方法内的所有参数
  14. 韦东山Linux嵌入式学习——硬件复习
  15. 主编编辑器如何绑定公众号?
  16. 微软日语输入法安装及简单教程(深度技术 ghost xp)
  17. Jpress的基本使用
  18. Vue 点击获得父元素,子元素,兄弟元素(DOM操作)
  19. java 无符号右移_java中的无符号移位运算
  20. 坦克大战Java版(文末附下载地址)

热门文章

  1. 2009 junior T1 多项式输出 题解
  2. 微信、支付宝付款码规则
  3. 没毕业就3次跳槽的经历,走不平凡的路,让人跌破眼镜。
  4. uniapp 文本 字体 样式总结
  5. Python+Vue计算机毕业设计景天汽车销售网页tm32a(源码+程序+LW+部署)
  6. 一文读懂机器学习,大数据/自然语言处理/算法全有了……
  7. linux驱动tft屏幕,Linux2.6.26.5加入TFT-LCD驱动
  8. ELF加载器的原理与实现
  9. HashMap面试常问问题
  10. 特斯拉、软件与颠覆,下一家震惊世界的科技公司会是谁?