codeigniter集成ucenter1.6双向通信的解决办法

2015-01-24信息快讯网

用codeigniter开发一个子网站,之后想和原来的论坛进行同步,包括同步登陆和双向通信。这篇文章主要介绍了codeigniter集成ucenter1.6双向通信的解决办法,需要的朋友可以参考下

用codeigniter开发一个子网站,之后想和原来的论坛进行同步,包括同步登陆和双向通信

先装好ucenter,然后新建一个other的应用,把生成的代码拷出来,新建一个config.ini.php到你的uc_client,ucenter会产生一个yourdomain.com/api/uc.php的请求,/api/uc.php不需要填写,要保证ucenter请求正确位置,才能做到双向通信

把uc_client复制到你的网站,目录可以自己定,就根目录吧。如果你把api目录放到uc_client目录低下,那么应用的请求路径yourdomain.com/uc_client,如果api也放在根目录请求地址uc_client可以去掉

建一个libraries/Ucenter.php内容是

<?php
class Ucenter {
    function __construct() {
        require_once FCPATH . './api/uc_client/config.inc.php';
        require_once FCPATH . './api/uc_client/client.php';
    }

function getUserId() { return $this->_uid; }

function getUserName() { return ucwords(strtolower($this->_username)); }

function login($username, $password) { return uc_user_login($username, $password); } function synlogin($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); } } ?>

具体要反回哪些函数,可以在上面代码加上,可以打开uc_client/client.php看,可以加上你需要的函数,返回即可。

调用方法:

$username = $this->input->post('username');
$password = $this->input->post('password');
$this->load->library('ucenter');
list($uid, $username, $password, $email) = $this->ucenter->login($username, $password);
if(!empty($uid)){
    //生成同步登录的代码
    $ucsynlogin = $this->ucenter->synlogin($uid);
}

php中使用session_set_save_handler()函数把session保存到MySQL数据库实例
php函数serialize()与unserialize()用法实例
php实现webservice实例
PHP中Header使用的HTTP协议及常用方法小结
php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解决方法
PHP has encountered a Stack overflow问题解决方法
Codeigniter(CI)框架分页函数及相关知识
php中__destruct与register_shutdown_function执行的先后顺序问题
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
PHP中file_get_contents高用法实例
PHP提示Cannot modify header information - headers already sent by解决方法
php中file_get_content 和curl以及fopen 效率分析
CentOS 6.3下安装PHP xcache扩展模块笔记
CodeIgniter错误mysql_connect(): No such file or directory解决方法
CodeIgniter框架URL路由总结
简单分析ucenter 会员同步登录通信原理
ThinkPHP跳转页success及error模板实例教程
ThinkPHP页面跳转success与error方法概述
php自动识别文件编码并转换为UTF-8的方法
使用CodeIgniter的类库做图片上传
Codeigniter出现错误提示Error with CACHE directory的解决方案
Codeigniter注册登录代码示例
Codeigniter操作数据库表的优化写法总结
codeigniter数据库操作函数汇总
PhpDocumentor 2安装以及生成API文档的方法
php中curl和file_get_content的区别
php中curl、fsocket、file_get_content三个函数的使用比较
用PHP和Shell写Hadoop的MapReduce程序
php实现httpclient类示例
php检测useragent版本示例
©2014-2024 dbsqp.com