IWebExchanger/整合各系统

来自站长百科
跳转至: 导航、​ 搜索

IWebExchanger | IWebExchanger安装与整合 | IWebExchanger使用

1、将整合包内的客户端部分移至网站根目录下。
2、配置exchanger/config.php文件。如图所示:
Iwebexchanger15.jpg
3、在原系统的数据库用户表内添加两个字段
字段名称 类型 默认值 是否为空 备注 是否主键
openid BigInt(12) unsigned NULL 聚ID
certificate Char/VarChar(32) NULL 认证码
4、数据库的使用

调用原系统的数据库处理函数。

用本产品提供的数据库exchanger/db_mysql_class.php(需要修改该文件中的数据库配置信息)。

建议使用原系统的数据库操作机制。

5、重写单点登录功能的有关函数

打开exchanger\meframe\expands\passport目录下的passport.php文件,实现login 、logout 、bindUser、 hasOpenid、 regUser等函数

  • login($openid, $certificate, $url="")函数:实现以openid和certificate能登入的函数,这里的$url,主要是实现用户登录后跳转地址,要保证的系统登录一样的效果,主要是sessioncookie的写入,注意在此函数内添加变量如下变量,并且赋上对应的值。
// session_start(); // 保证session开启,默认系统在server.php文件中已开启
$iweb_user=array(
	'openid'=>$openid,
	'certificate'=>$certificate
		);
$_SESSION['iweb_user']=$iweb_user;
  • logout($openid, $certificate)函数:实现以openid和certificate能登出的函数,主要是销毁session、cookie,这个函数一般不用修改,除非你的系统有特别的要求。
  • bindUser($iweb_user)函数:这里的$iwb_user是一个数组,索引有openid、certificate、email、name、password,要根据系统的具体要求,取对应的参数进行判断来修改用户表,更新用户对应的openid和certificate成功返回“success”,失败返回“fail”,如果用户已经存在则返回“exist”。
  • regUser($iweb_user)函数:这里的$iwb_user参数和bindUser函数里的一样,用户可以根据自己系统的需要来注册用户。
6、原系统登录、登出跳转拦截
  • 登录拦截:

引入exchanger/includes.php。

如:require(ROOT_PATH . "exchanger/includes.php");

跳转之前需保证session开启,加入如下代码:

$iweb_user = array
(
	'openid'=>$user_info['openid'], 
        //当前用户的openid,从数据库用户信息读取
	'certificate'=>$user_info['certificate'], 
        //当前用户的certificate,从数据库用户信息读取
	'name'=>$user_info['user_name'], 
        //当前用户的用户名,从数据库用户信息读取
	'email'=>$user_info['user_email'], 
        //当前用户的邮箱,从数据库用户信息读取
	'password'=>$password 
        //当前用户的密码,从登录表单提交的信息获得(必须为加密前的明文)。
);set_machinemade($iweb_user);

将系统原有的登录跳转去掉,改成跳转到exchanger/synch_passport.php。

  • 登出拦截

将系统原有的登录跳转去掉,改成跳转到exchanger/synch_passport.php?synch_logout=true,并保证跳转之前session不能销毁。

参考来源[ ]

IWebExchanger使用手册导航

IWebExchanger安装与整合

整合前概述 | 安装服务中心 | 整合各系统

IWebExchanger使用

第三方公共身份标识系统 | 服务连接中心 | 系统客户端