IWebExchanger/整合各系统
来自站长百科
- 2、配置exchanger/config.php文件。如图所示:
- 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等函数
// 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使用手册导航 | ||||
---|---|---|---|---|
|