由于公司一客户早先之前使用了phpbb3的论坛,所以希望新开发的程序能够跟pbpbb3整合,实现同步登录,同步退出,用户资料同步更新,由于是在同一域名下的不同目录,所以CMS跟pbpbb3整合起来相对比较容易,从pbpbb3论坛上看了一些资料,phpbb3与CMS系统整合方法,跟大家分享
phpbb原文地址:phpbb全站通用session整合
http://www.phpbb.com/kb/article/phpbb3-cross-site-sessions-integration/
原文整合pbpbb3的前提是在同一域名以及同一目录下,使用pbpbb3的用户库作为用户数据库,当然改进一下可以实现不同域名的整合
建立一个php文件存放在phpbb3的根目录,比如文件名为phpbb3.php,加入如下内容,在任何你需要使用的session的文件中使用include_once() or require_once()包含这个文件
define('IN_PHPBB', true);
define('ROOT_PATH', "/path/to/forums");
if (!defined('IN_PHPBB') || !defined('ROOT_PATH')) {
exit();
}
$phpEx = "php";
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : ROOT_PATH . '/';
include($phpbb_root_path . 'common.' . $phpEx);
$user->session_begin();
$auth->acl($user->data);
通过pbpbb登录同步登录系统
$auth->login($username, $password, $remember, 1, 0)
关于上面用户名和密码的解释在这里
$username would be the exact username that would be found in the phpBB user table.
用户名需要真实存在于pbpBB的用户表
$password would be the string to match by (pre-hash, this should be just the original text, the $auth->login() function takes care of converting it into a comparable hash)