Codeigniter整合Ucenter同步登陆

Ucenter整合Discuz同步登陆

1、先安装UCenter 再安装Discuz 
2、登录Discuz,用户名:admin, 密码:admin
3、登录Discuz后台管理  密码:admin
4、登录UCenter ,选择应用。会有一个已通信成功的UCenter+Discuz应用

或:在安装Discuz之后,会有一个UCenter,并且已建立好一个应用,可以用这个,日前未试过同步登录是否可行。

Codeigniter整合Ucenter同步登陆
 
说明:本地测试服务器配置开启URL重写
 
1、在康盛网站http://www.comsenz.com/downloads/install/ucenter下载ucenter源码包
 2、解压后,将uc_client文件夹复制到CI根目录。同样,在advanced/examples复制api文件夹、include文件夹、config.inc.php到CI根目录。
3、在UCENTER管理中心添加一个应用,
应用类型:其他
应用名称:CI、
应用的主URL:【要建立连接的网站网址】如:http://www.what.com、
应用IP:127.0.0.1
通信密钥:到config.inc.php找‘UC_KEY’字段的值。
选择“开启同步、接受通知”。
得到应用id,写入config.inc.php文件中‘UC_APPID’字段。
 4、在CI根目录找到config.inc.php修改相应的数据库配置。
 5、配置好之后还是显示通信失败,是因为CI启用了URL重写,需要配置CI根目录下的.htaccess文件,添加uc_client、api、include到被忽略的列表,如下:

 RewriteEngine on
 RewriteCond $1 !^(index\.php|images|ckeditor|ckfinder|uploadfile|robots\.txt|uc_client|config\.inc\.php|api|include)
 RewriteRule ^(.*)$ index.php/$1 [L]

 6、在到ucenter管理中心可以看到通信成功!
 7、在CI建立自己的类库,如在application/ libraries下新建一个文件Mycommon.php

<?php
 class Mycommon {        
         function __construct(){
                 include './config.inc.php';
                 include './uc_client/client.php';
         }
         
         function getUserId() {
                 return $this->_uid;
         }
         
         function getUserName() {
                 return ucwords ( strtolower ( $this->_username ) );
         }
         
         function login($uid) {
                 return uc_user_synlogin ( $uid );
         }
         
         function login_out() {
                 return uc_user_synlogout ();
         }
         
         function regediter($username,$password,$email){
                 return uc_user_register($username,$password,$email);                                
         }
}
?>

 8、接下来就可以在控制器中调用

$this->load->library(‘mycommon’);
echo $this->mycommon->login(id);

你可能感兴趣的:(Codeigniter整合Ucenter同步登陆)