作者appleboy46 (小恶魔)
看板PHP
标题Re: [请益] phpbb的帐号整合
时间Thu Jul 17 23:33:17 2008
※ 引述《Joe8 (Beautiful Stranger)》之铭言:
: 请问板上有人成功将自己做的会员网站系统中的帐号密码等私人资讯
: 与phpbb等论坛程式整合成功的吗?
: 意思是说只需要一次登入就可以在主体网站内浏览且上phpbb论坛发文
: 我想到的蠢方法1:
: 先把两边的user资料表栏位及资料复制成相同
: 然後在登入的时候填写帐号密码的表单送出到两边的验证帐号密码页面
: 例如:先送到主网站认证页面,认证ok後再利用header接url变数方式
: 送去phpbb的帐号密码认证页面,如果两边都通过则session应该都会正常开启..
: 这方法真的挺蠢的>"<
: 方法2:会员登入之後的依据应该都是靠session内的纪录值,如果能把主网站跟phpbb的
: session变数整合起来,那登入其中一个应该就算开通了...
: 有人可以提供想法吗,谢谢Orz
: 另外我大概看了一下phpbb内的user资料库栏位,
: 密码似乎不是用MD5加密,而是其他演算法的样子@@
我现在说的是 phpbb2 喔,不是 phpbb3 因为我没去 trace phpbb3 的 code
首先把 phpbb2 用到的一些 function include 进来:
session_begin()
session_pagestart()
session_end()
session_clean()
这四个是最主要登入登出用到的函式,所以你的系统必需要有
那认证部份,phpbb2 采用 MD5 的方式认证,自己用 md5
http://tw2.php.net/md5
测试不就知道了?
那登入部份的话,帐号密码比对成功之後,去跑:
$session_id = session_begin($row['user_id'], $user_ip, PAGE_INDEX,
FALSE, $autologin, $admin);
if( $session_id )
{
echo "登入成功";
}
else
{
die("Couldn't start session : login");
}
那重点就是 session_begin(),只要比对帐号密码成功,就是 call function 就对了
那你在切换到 phpbb2 的时候,就可以自动登入了
$row['user_id'] :在 phpbb_users 资料表的 user_id
$user_ip : function encode_ip 出来的值
PAGE_INDEX:通常是常数,随便给她一个值吧
$autologin:是否自动登入,就是 phpbb2 的 checkbox 自动登入,通常给 0
$admin:是否是 admin,普通使用者给 0
大概是这样
我只是把 phpbb2 的 user 认证部份,用到其他专案,这样省的开发使用者架构部份
如果不懂,在提出吧~
--
Appleboy Blog:
http://blog.Wu-Boy.com
Appleboy Life:
http://life.wu-boy.com
迷你写真部落格:
http://mini101.twgg.org
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.123.215.42