[经验分享] 外部程序调用ucenter同步登陆同步登出论坛以及空间
来源:互联网 发布:limit mysql 性能 编辑:程序博客网 时间:2024/06/07 08:38
今天经过研究发现使用discuz论坛的uc_client以及配置文件可以同步登陆登出uchome,使用uchome的uc_client和配置文件可以同步登陆登出discuz论坛
查看了代码才发现是client.php只生成一条script语句,所以就只能登陆一个应用程序了,我修改了文件使uc_user_synlogin可以登陆所有应用,uc_user_synlogout可以登出所有应用
下面为步骤:
一、将论坛中的 uc_client文件夹 以及 config.inc.php 文件复制到网站根目录下的文件夹中,比如新建的文件夹uc
在config.inc.php文件的最后加入所有应用程序的id,这些id可以去ucenter的后台查看
// ===========================所有应用id define('ALL_APPID','1|2');
二、修改uc_client文件夹下的client.php文件
修改程序 uc_user_synlogin 和 uc_user_synlogout 将其中的 uc_api_post 改为 uc_api_post2
然后将下列代码复制到 client.php的最后,再使用同步登陆和登出程序就可以同时登陆所有的应用了
// =========================以下为云之麒修改============================= function uc_api_post2($module, $action, $arg = array()) { $s = $sep = ''; foreach($arg as $k => $v) { $k = urlencode($k); if(is_array($v)) { $s2 = $sep2 = ''; foreach($v as $k2 => $v2) { $k2 = urlencode($k2); $s2 .= "$sep2{$k}[$k2]=".urlencode(uc_stripslashes($v2)); $sep2 = '&'; } $s .= $sep.$s2; } else { $s .= "$sep$k=".urlencode(uc_stripslashes($v)); } $sep = '&'; } $postdata = uc_api_requestdata2($module, $action, $s); $result = ""; foreach($postdata as $key => $value){ $result = $result.uc_fopen2(UC_API.'/index.php', 500000, $value, '', TRUE, UC_IP, 20); } return $result; } function uc_api_requestdata2($module, $action, $arg='', $extra='') { $input = uc_api_input($arg); $post = array(); $allId = explode("|",ALL_APPID); foreach($allId as $key => $value){ $post[] = "m=$module&a=$action&inajax=2&release=".UC_CLIENT_RELEASE."&input=$input&appid=".$value.$extra; } return $post; } // =========================以上为云之麒修改=============================
PS:修改好ucenter后台后再去修改,论坛下的config.inc.php,不要使用记事本打开修改,txt保存utf8文件时会自动给文件添加BOM,这时后台就会显示通信失败,建议使用UltraEdit编辑,保存时选择另存 utf8 - 无BOM
- [经验分享] 外部程序调用ucenter同步登陆同步登出论坛以及空间
- UCenter实现同步登陆
- UCenter单点登录,同步登录,同步登出原理
- UCenter单点登录,同步登录,同步登出原理
- ucenter同步登陆过程分析
- Ucenter的同步登陆与同步退出
- Ucenter会员同步登陆通讯原理
- ucenter同步登陆详细步骤与问题
- SqlServer调用外部程序实现数据同步
- SqlServer调用外部程序实现数据同步
- dede与discuz同步登陆,ucenter同步通信
- 【转载】dede与discuz同步登陆,ucenter同步通信
- Asp.net整合Disucuz X 通过Ucenter同步登陆
- 使用ucenter整合网站和discuz的同步登陆
- c# 同步调用外部程序及终止执行
- SQLServer——触发器调用外部程序实现数据同步
- discuz论坛整合ucenter免激活,同步登录,同步退出解决方案(附源码)
- 整合会员资料到phpbb论坛, 实现同步登入登出功能
- php中自动提取文章内容关键字seo优化网站的函数方法
- Windows
- php替换字符串中首个字符串[不重复替换]
- 快乐的程序员
- java事件监听
- [经验分享] 外部程序调用ucenter同步登陆同步登出论坛以及空间
- 教你用js超简单实现页面自动控制图片的宽度和高度
- java入门教程:网络通信例子(一)
- poj 1651
- java入门教程:网络通信例子(二)
- Qt设置QTextEdit和QLabel的字体颜色
- oracle简易客户端安装配置。
- java之socket编程之谈
- linux图形界面基本知识(X、X11、Xfree86、Xorg、GNOME、KDE之间的关系)