国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > PhpCMS > 正文

phpcms v9 discuz x31 通信 同步登陸 退出 discuz免激活

2024-09-10 07:15:36
字體:
來源:轉載
供稿:網友

第一步:

1.使用新的uc_client文件,打開phpsso_server/api/ 目錄修改原uc_client目錄名稱為uc_client_backup,然后將ucenter下面文件uc_client覆蓋到該目錄下.

第二步:

1.登錄Discuz! X31后臺,進入“UCenter”,點擊“應用管理”后點擊“添加新應用”進入應用添加界面,設置如下:

1、安裝方式選擇“自定義安裝”

2、應用類型選擇“其他”

3、應用名稱填“phpsso”

4、應用的主 URL, 即phpsso_server的路徑,視實際情況而定,注意最后不要帶斜杠。如本教程填寫為http://127.0.0.1/phpsso_server

5、通信密鑰,任意填寫64字節以內的英文字母及數字,不過要記住,因為phpcms 的通信密鑰必須與此設置保持一致,否則 phpsso 將無法與 UCenter 正常通信。如本教程設置通信密鑰為:chinaz

6、應用IP、應用的物理路徑、查看個人資料頁面地址默認留空即可,而應用接口文件名稱默認uc.php即可。

7、標簽單條顯示模板、標簽模板標記說明兩項默認留空即可。

8、是否開啟同步登錄:是。只有開啟后,兩款程序才能實現同步登錄。

9、完成后提交,將生成新的應用ID。(記住這個應用ID,在”第三步“中將用到它。)

10、進入后臺“站長”,“UCenter 設置”選項。"是否允許直接激活"一項,選擇“是”。

下面去Phpcms v9中配置phpsso。

第三步:配置phpsso

登錄Phpcms v9后臺,進入“phpsso”,點擊“系統設置”,進入“UCenter配置”設置界面,設置如下:

1、是否啟用:是

2、Ucenter api 地址,即uc_server的路徑,根據你的安裝情況而定,注意最后不要帶斜杠。如本教程填寫為:http://localhost/bbs/uc_server

3、Ucenter 數據庫信息:根據自己情況填寫數據庫的信息。其中數據庫表前綴的格式為“`數據庫名`.數據庫前綴”,注意數據庫名的不是單引號。

4、應用id(APP ID),即第二步創建的 phpsso 應用時自動生成的應用ID。

5、Ucenter 通信密鑰,即第二步中設置的“通信密鑰”,這兩個值一定要確保一致,否則會導致無法通信。

第四步:查看通信狀態

登錄Discuz! X31后臺,進入“UCenter”,點擊“應用管理”查看第二步中創建的 phpsso 應用與 UCenter 通信是否成功,如果  通信失敗,請檢查“第二步”與“第三步”中的各項參數配置是否正確.

第五步:修改 Discuz!  X31會員登錄相關

若不修改此處則在Phpcms v9登錄后可以同步登錄到Discuz!  X31,但是在Discuz!  X31登錄卻無法同步登錄到Phpcms v9,修改步驟如下:

1、找到discuz目錄下 template/default/member/login.htm,刪除(如一樣可不做處理)

  1. onsubmit="{if $this->setting['pwdsafety']}pwmd5('password3_$loginhash');{/if}pwdclear = 1;ajaxpost('loginform_$loginhash', 'returnmessage_$loginhash', 'returnmessage_$loginhash', 'onerror');return false;" 

2、找到discuz目錄下 template/default/member/login_s imple.htm,刪除,如一樣可不做處理.

  1. onsubmit="{if $_G['setting']['pwdsafety']}pwmd5('ls_password');{/if}return lsSubmit();" 

3、找到discuz目錄下 /source/function/function_message.php,查找(如一樣可不做處理):

$param['header'] = true;

替換為:

$param['header'] = false;

第六步:

1.(注冊提示錯誤:“驗證碼錯誤”)修改如下:

文件位置:/phpcms/modules/member/index.php

2.(phpcmsv9登陸,“discuz不同步登陸錯誤”)修改如下:

文件位置:/phpsso_server/api/uc_client/client.php

第七步:找到discuz目錄網站:

分析其主要原因是phpsso與ucenter通信成功后,XXX_ucenter_member表中的用戶已經同步成功但是在XXX_common_member中并沒有此用戶,所以只要在xxx_common_member中插入此用戶就可以了,所以修改discuz/api/uc.php下找到function synlogin($get, $post)整段,修改為下面的內容:

  1. function synlogin($get$post) { 
  2.         global $_G
  3.  
  4.         if(!API_SYNLOGIN) { 
  5.             return API_RETURN_FORBIDDEN; 
  6.         } 
  7.  
  8.         header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"'); 
  9.  
  10.         $cookietime = 31536000; 
  11.         $uid = intval($get['uid']); 
  12.         $query = DB::query("SELECT uid, username, password FROM ".DB::table('common_member')." WHERE uid='$uid'"); 
  13.         if ($member = DB::fetch($query)) 
  14.         { 
  15.             dsetcookie('auth', authcode("$member[password]/t$member[uid]"'ENCODE'), $cookietime); 
  16.         }else 
  17.         { 
  18.             $username = $get['username']; 
  19.             $query = DB::query("SELECT uid, username, password, email FROM ".DB::table('ucenter_members')." WHERE username='$username'"); 
  20.             $member = DB::fetch($query); 
  21.             $password = $member['password']; 
  22.             $email = $member['email']; 
  23.             $ip = $_SERVER['REMOTE_ADDR']; 
  24.             $time = time(); 
  25.             $userdata = array
  26.                 'uid'=>$uid
  27.                 'username'=>$username
  28.                 'password'=>$password
  29.                 'email'=>$email
  30.                 'adminid'=>0, 
  31.                 'groupid'=>10, 
  32.                 'regdate'=>$time
  33.                 'credits'=>0, 
  34.                 'timeoffset'=>9999 
  35.             ); 
  36.             DB::insert('common_member'$userdata); 
  37.  
  38.             $status_data = array
  39.                 'uid' => $uid
  40.                 'regip' => $ip
  41.                 'lastip' => $ip
  42.                 'lastvisit' => $time
  43.                 'lastactivity' => $time
  44.                 'lastpost' => 0, 
  45.                 'lastsendmail' => 0 
  46.             ); 
  47.             DB::insert('common_member_status'$status_data); 
  48.             DB::insert('common_member_profile'array('uid' => $uid)); 
  49.             DB::insert('common_member_field_forum'array('uid' => $uid)); 
  50.             DB::insert('common_member_field_home'array('uid' => $uid)); 
  51.             DB::insert('common_member_count'array('uid' => $uid)); 
  52.             DB::query('UPDATE '.DB::table('common_setting')." SET svalue='$username' WHERE skey='lastmember'"); 
  53.             $query = DB::query("SELECT uid, username, password FROM ".DB::table('common_member')." WHERE uid='$uid'"); 
  54.             if ($member = DB::fetch($query)) 
  55.             { //Vevb.com 
  56.                 dsetcookie('auth', authcode("$member[password]/t$member[uid]"'ENCODE'), $cookietime); 
  57.             } 
  58.         } 
  59.     } 

至此完成,上圖為證.

注冊也可以同步登陸,不能配置成功的多檢查下自身問題,呵呵.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南城县| 峡江县| 化隆| 唐河县| 河南省| 绥德县| 新源县| 三明市| 文山县| 南投市| 兴隆县| 安泽县| 双牌县| 宜昌市| 贵州省| 平武县| 衡阳市| 盱眙县| 阳曲县| 潼关县| 老河口市| 绍兴市| 威宁| 丽江市| 乐陵市| 花莲市| 钟山县| 朝阳县| 沅江市| 兰坪| 绥芬河市| 张家界市| 平遥县| 同江市| 五大连池市| 英吉沙县| 西乡县| 清镇市| 衡东县| 武清区| 兴义市|