1. 程式人生 > >完美解決DiscuzX3.2版本的QQ登入跳轉到完善資訊頁面完成註冊流程

完美解決DiscuzX3.2版本的QQ登入跳轉到完善資訊頁面完成註冊流程

(附:更新時間2016年10月19日)很多站長都會遇到這個問題:




1、QQ登入後需要完善資訊,才能正常使用,另外一個就是QQ登入了沒有自動跳轉到完善資訊頁面。


2、 點選完善資訊,填寫了資料後提交出現賬號已註冊。
解決方法思路是這樣的:


第一步 :
開啟檔案source/plugin/qqconnect/template/module.htm
搜尋
01.$('{$_G['setting']['reginput']['password']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';


02.$('{$_G['setting']['reginput']['username']}').outerHTML += '$js1';


03.$('{$_G['setting']['reginput']['password']}').required = 0;


04.$('{$_G['setting']['reginput']['password2']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';


05.$('{$_G['setting']['reginput']['password2']}').required = 0;
複製程式碼更改為
01.//$('{$_G['setting']['reginput']['password']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';


02.$('{$_G['setting']['reginput']['username']}').outerHTML += '$js1';


03.$('{$_G['setting']['reginput']['password']}').required = 0;


04.//$('{$_G['setting']['reginput']['password2']}').parentNode.parentNode.parentNode.parentNode.parentNode.style.display = 'none';


05.$('{$_G['setting']['reginput']['password2']}').required = 0;
複製程式碼二﹑開啟檔案 source/module/member/member_connect.php


搜尋
(注意:下面這句有些有,有些沒有,如果查詢不到那就可以省略這步)01.$ctl_obj->setting['ignorepassword'] = 1;     
複製程式碼更改為
01.//$ctl_obj->setting['ignorepassword'] = 1;
複製程式碼三﹑開啟檔案 source/module/member/member_connect_register.php


搜尋
01.C::t('#qqconnect#common_member_connect')->insert(array(


02.'uid' => $uid,


03.'conuin' => $conuin,


04.'conuinsecret' => $conuinsecret,


05.'conopenid' => $conopenid,


06.'conispublishfeed' => $conispublishfeed,


07.'conispublisht' => $conispublisht,


08.'conisregister' => '1',


09.'conisqzoneavatar' => $is_qzone_avatar,


10.'conisfeed' => '1',


11.'conisqqshow' => $is_use_qqshow,


12.));
複製程式碼更改為
本帖隱藏的內容
01.C::t('#qqconnect#common_member_connect')->insert(array(


02.'uid' => $uid,


03.'conuin' => $conuin,


04.'conuinsecret' => $conuinsecret,


05.'conopenid' => $conopenid,


06.'conispublishfeed' => $conispublishfeed,


07.'conispublisht' => $conispublisht,


08.'conisregister' => '0',


09.'conisqzoneavatar' => $is_qzone_avatar,


10.'conisfeed' => '1',


11.'conisqqshow' => $is_use_qqshow,


12.));
複製程式碼
四﹑開啟source\plugin\qqconnect\connect\connect_login.php


搜尋
01.$utilService->redirect($referer);
複製程式碼更改為
01.dheader('Location:member.php?mod=connect');
複製程式碼儲存 覆蓋 所有檔案即可!
第二步:
登入遠端伺服器,開啟PHPmyadmin,或者直接遠端命名也可以。找到discuz!安裝的資料庫,運營以下mysql語句:
ALTERTABLE  `pre_common_member_connect` ADD  `conuintoken` CHAR( 32 ) NOTNULL ;
ALTER TABLE  `pre_common_connect_guest` ADD  `conuintoken` CHAR( 32 )NOT NULL ;
注意表的字首“pre_”,如果您在安裝discuz!的時候更改了字首,請替換您更改後的字首。
執行成功後,清除快取,藥到病除!
如果遠端運營不方便的話,你還可以在後臺---站長---資料庫---升級,
根據提示完成檔案的修改後,在後臺直接執行以上mysql語句,效果一樣的。




如果你解決不了,請新增技術QQ:56669388,專注各類網站BUG修復/二次開發