站長資訊網
        最全最豐富的資訊網站

        discuz如何實現自動注冊登錄

        本文實現功能:

        1.從原有系統進入論壇自動登錄和注冊

        2.實現彈框在本頁面,不進行跳轉

        3.js在頁面加載時直接發起注冊請求

        這個功能之前使用的uc_user_register這個函數來處理的,但是今天在開發用戶空間時就會出現問題。

        項目需求

        在我們原有的系統上添加一個論壇,但是用戶信息需要共享。

        實現方法:在進入論壇時帶上原有系統的用戶信息,然后論壇那邊拿到信息直接注冊即可。

        從原有系統進入論壇自動注冊登錄

        準備一個這樣的一個緩沖頁面,放到upload/template/default/touch/member/register.htm的頁面中

        discuz如何實現自動注冊登錄

        然后我們需要把原有注冊代碼也需要放到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('&amp;', '&', 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里邊根據注釋添加自己的代碼即可

        discuz如何實現自動注冊登錄

        測試效果

        我們注冊一個ceshi123的賬號

        discuz如何實現自動注冊登錄

        測試發帖

        discuz如何實現自動注冊登錄

        為什么不使用uc_user_register這個方法來注冊用戶的原因

        如果使用了uc_user_register來直接注冊用戶,就會導致下面的信息全部獲取不到

        discuz如何實現自動注冊登錄

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 欧美国产日韩精品| 国产精品爽爽ⅴa在线观看| 中文精品一卡2卡3卡4卡| 婷婷精品国产亚洲AV麻豆不片| www.日韩精品| 国产精品影音先锋| 久久99热只有频精品8| 伊人久久无码精品中文字幕| 国产午夜精品一本在线观看| 国产精品自产拍在线观看| 国产成人精品无码一区二区| 日韩精品无码久久久久久| 中文字幕精品久久| 欧美日韩精品一区二区三区不卡| 成人免费精品网站在线观看影片| 成人国产精品999视频| 99国产精品无码| 国产福利精品一区二区| 久久精品中文闷骚内射| 日韩精品亚洲人成在线观看| 日韩精品无码熟人妻视频| 亚洲码国产精品高潮在线| 亚洲日韩国产AV无码无码精品| 一区二区国产精品 | 国产精品莉莉欧美自在线线| 久久久久久亚洲Av无码精品专口| 全球AV集中精品导航福利| 亚洲AV日韩精品久久久久久久| 亚洲精品老司机在线观看| 亚洲精品国产电影| 日韩一区二区三区在线精品| 日本精品视频在线观看| 精品久久人人做人人爽综合| 久久国产美女免费观看精品| 青草青草久热精品视频在线观看| 免费精品精品国产欧美在线| 色婷婷久久久SWAG精品| 亚洲国产成人久久精品99| 一色屋精品视频在线观看| 久久亚洲私人国产精品| freesexvideos精品老师毛多|