您现在的位置是:首页 > cms教程 > Discuz教程Discuz教程

discuz实现自动注册登录的方法

沛菡2025-06-19Discuz教程已有人查阅

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

在我们原有的系统上添加一个论坛,但是用户信息需要共享。实现方法:在进入论坛时带上原有系统的用户信息,然后论坛那边拿到信息直接注册即可。
从原有系统进入论坛自动注册登录
准备一个这样的一个缓冲页面,放到upload/template/default/touch/member/register.htm的页面中
然后我们需要把原有注册代码也需要放到upload/template/default/touch/member/register.htm
放这段代码的原因是dsicuz在提交表单时会有很多的参数限制,我们就保持原有不动就行了
<form method="post" autocomplete="off" name="register" id="registerform" action="member.php?mod={$_G[setting][regname]}&mobile=2">
<input type="hidden" name="regsubmit" value="yes" />
<input type="hidden" id="hash" name="formhash" value="{FORMHASH}" />
<!--{eval $dreferer = str_replace('&', '&', dreferer());}-->
<input type="hidden" id="referer" name="referer" value="$dreferer" />
<input type="hidden" name="activationauth" value="{if $_GET[action] == 'activation'}$activationauth{/if}" />
<input type="hidden" name="agreebbrule" value="$bbrulehash" id="agreebbrule" checked="checked" />
<!--{if $_G['setting']['sendregisterurl']}-->
<input type="hidden" name="hash" value="$_GET[hash]" />
<!--{/if}-->
<!--{if $secqaacheck || $seccodecheck}-->
<!--{subtemplate common/seccheck}-->
<!--{/if}-->
</div>
</form>
然后我们需要在页面加载时直接 请求,添加下面代码即可。
实现弹框在本页面,不进行跳转,加载时直接发起注册请求这段js代码实现的功能:在页面加载时直接发起注册请求,然后返回信息,直接在本页面显示,而非跳转到另一个页面
<script>
var hash = $('#hash').val();
var referer = $('#referer').val();
$.ajax({
type:'POST',
url:"member.php?mod={$_G[setting][regname]}&mobile=2" +'&inajax=1',
data:{
"handlekey":"registerform",
"inajax" : 1,
"regsubmit" :"yes",
"formhash":hash,
"referer" :referer
},
dataType:'xml'
})
.success(function(s) {
popup.open(s.lastChild.firstChild.nodeValue);
evalscript(s.lastChild.firstChild.nodeValue);
})
.error(function() {
window.location.href = obj.attr('href');
popup.close();
});
</script>
这个时候还需要最后一步的就是从原系统用什么形势来传过来。这个方式这里就不提供了,我做一个模拟的数据。
在upload/source/module/member/member_register.php   方法 on_register里边根据注释添加自己的代码即可
测试效果
我们注册一个ceshi123的账号
测试发帖
为什么不使用uc_user_register这个方法来注册用户的原因
如果使用了uc_user_register来直接注册用户,就会导致下面的信息 基本获取不到。

本文标签:

很赞哦! ()

相关源码

  • (响应式)轴承机械五金零件产品pbootcms落地推广单页源码下载为轴承、机械零件等工业产品打造的响应式单页模板,基于PbootCMS内核开发,助力企业快速构建专业级产品展示页面。模板采用工业风设计语言,突出产品参数与性能优势,适用于设备制造商、零部件供应商等B2B场景推广。查看源码
  • pbootcms模板PC+WAP娱乐新闻资讯类博客网站源码该模板基于PbootCMS内核开发,专为娱乐新闻、健康生活类资讯网站设计,同时支持快速适配其他行业(如企业官网、博客门户等),仅需替换图文内容即可完成转型。查看源码
  • 帝国CMS游戏应用APP推广下载站模板免费下载本模板为移动应用推广、手机游戏推广行业设计,集成H5游戏平台与APP下载功能,支持PC端与移动端自适应访问。专注于为应用开发商、游戏发行商提供专业的线上推广展示平台。查看源码
  • (自适应响应式)HTML5磁电机械设备蓝色营销型网站pbootcms模板本模板为磁电设备行业设计,采用蓝色营销风格,突出工业设备的专业性和技术感。模板结构清晰,能够有效展示磁电设备的技术参数、应用场景和企业实力,帮助客户快速了解产品特点和公司服务。查看源码
  • pbootcms模板(PC+WAP)火锅加盟餐饮美食类带留言源码基于PbootCMS内核深度开发,为火锅、餐饮品牌打造的营销型解决方案。采用红色主题传递行业活力,实现PC与WAP端适配。查看源码
  • (自适应)蓄电池能源智能数码科技产品pbootcms模板源码下载本款基于PbootCMS开发的网站模板为蓄电池及能源科技企业设计,特别适合锂电池、储能系统、新能源电池等产品的展示与推广。查看源码
分享笔记 (共有 篇笔记)
验证码:

本栏推荐