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

首頁 > CMS > Phpwind > 正文

網站與phpwind用戶同步的方法

2024-08-30 19:07:00
字體:
來源:轉載
供稿:網友

搭建了一個個人網站,希望使用phpwind來完成論壇功能.但很快就發現存在用戶同步的問題,我的網站已經有了用戶管理功能, phpwind論壇也有.因此用戶同步注冊,登陸和注銷是必須要實現的. 網上說可以使用ucenter,但沒有找到相關資料。倒是找到了一些手動實現同步登錄的資料.

不過這些寫的都不太全面,或者有些問題.我來總結一下好了.

首先確認要同步的版本是phpwind8.7.這個phpwind目前支持下載的兩大版本之一,還有一個是9,不過貌似變化比較大。8.7版本目前也是阿里云虛擬主機一鍵安裝lamp缺省提供的論壇版本。

首先是實現用戶注冊的同步:

1)先把phpwind解壓到http服務器某個目錄下,我的是放到了網站的一個phpwind子目錄下,啟動install.php安裝。

2)在完成自身網站用戶注冊的代碼后面,增加如下代碼即可:

  1. require_once '../phpwind/global.php'
  2. require_once(R_P.'require/checkpass.php'); 
  3.  
  4. $registerinfo->mail=email; 
  5. $registerinfo->nickname=username; 
  6. $registerinfo->uid=userid; 
  7. $this->registeInphpWind($registerinfo); 
  8.  
  9. //------------------------------------------------- 
  10. registeInphpWind函數的實現如下: 
  11.  
  12.    protected function registeInphpWind(stdClass $registerinfo
  13.     { 
  14.     $ret=new Ret(); 
  15.     
  16.  
  17.        //pw = phpwind 的安裝前綴 
  18.   //判斷pw中是否有該會員數據 
  19.   $sql_valid = "select uid from phpwinddb.pw_members where username = '$registerinfo->nickname'"
  20.        if (!$result=mysql_query($sql_valid)) 
  21. error_log(mysql_error()); 
  22. $ret->errorcode=Error_DB_Query; 
  23.     return $ret
  24.    $row = mysql_fetch_object($result); 
  25.    mysql_free_result($result); 
  26.  
  27.   if(!$row)    
  28.   { 
  29.     //插入該會員數據到phpwind的pw_members表 
  30.     $sql = "insert into phpwinddb.pw_members(uid,username,password,email,groupid,memberid,icon,gender,regdate,signature,introduce,location,bday,yz,aliww,banpm) values ($registerinfo->uid,'$registerinfo->nickname','$registerinfo->password','$registerinfo->mail',-1,8,'',0,'".time()."','','','','".date("Y-m-d",time())."',1,'','')"
  31.     mysql_query($sql); 
  32.      
  33.    
  34.      
  35.     //插入數據到phpwind的pw_memberdata表 
  36.     mysql_query("INSERT INTO phpwinddb.pw_memberdata (uid,postnum,rvrc,money,lastvisit,thisvisit,onlineip) VALUES ($registerinfo->uid, '0', '0', '0', '" . time() . "', '" . time() . "', '')"); 
  37.     mysql_query("UPDATE phpwinddb.pw_bbsinfo SET newmember='$registerinfo->nickname',totalmember=totalmember+1 WHERE id='1'"); 
  38.   } 
  39.    
  40.   $plinfo=new stdClass(); 
  41. $plinfo->username=$registerinfo->nickname; 
  42.    $plinfo->password=$registerinfo->password; 
  43.     
  44.    $this->loginPHPWind($plinfo); 
  45.  
  46.     } 

以上最后一部分是實現用戶登錄,下面看看用戶同步登錄的實現,phpwind用戶同步登錄:

  1. protected function loginPHPWind(stdClass $plinfo
  2.     { 
  3.     //與phpwind登陸同步,原理:共用cookie 
  4.     $pwuser=$plinfo->username; 
  5.     $md5_pwpwd=$plinfo->password; 
  6.     $safecv=questcode('-1','1','1'); 
  7.    $logininfo = checkpass($pwuser$md5_pwpwd$safecv$lgt, true); 
  8.    list($winduid$groupid$windpwd$showmsginfo) = $logininfo
  9.    
  10.  
  11.    $param2=StrCode($winduid."/t".$windpwd."/t".''); 
  12.    
  13. Cookie("winduser",$param2); 
  14. Cookie("ck_info",$db_ckpath."/t".$db_ckdomain); 
  15. Cookie('lastvisit','',0);//將$lastvist清空以將剛注冊的會員加入今日到訪會員中 
  16.     } 

3)同步登出,退出登錄

這個超級簡單,就一句話:Loginout();這個函數在checkpass.php里面,所以把這個文件包含進來就可以調用了,下一步是修改phpwind,實現自身網站的同步注冊,登錄和登出,目前我只實現了同步注冊,弄好其他的再一起再發上來.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 稷山县| 灵山县| 昌邑市| 潼南县| 理塘县| 蓝山县| 晴隆县| 舞阳县| 凤凰县| 白水县| 辽阳县| 天等县| 容城县| 双鸭山市| 梧州市| 晋宁县| 迁安市| 宁都县| 五常市| 洛浦县| 陆川县| 桦甸市| 秦皇岛市| 东乡族自治县| 崇义县| 东兰县| 晋州市| 三明市| 神农架林区| 开封市| 房山区| 二连浩特市| 凤凰县| 闽侯县| 汝阳县| 容城县| 杨浦区| 曲靖市| 奇台县| 繁昌县| 宁陵县|