第一步,进入discuz后台,点击UCenter菜单,然后点击应用管理,接着点击右侧的添加新应用按钮

然后填写应用相关信息:
1、应用类型选择“其他”
2、应该名称填写“phpcms” //此处可以自己定义名称
3、应用的主URL填 http://你的域名/phpsso_server //我的是http://localhost/hi0556/phpsso_server
4、通讯密钥现在不填写,保存的时候会自动生成,后面会用到此密钥
5、是否开启同步登录选择“是”
6、是否接受通知选择“是” 接着点击提交,此时看到应用列表,但是通讯状态是失败 解决办法,进入第二步操作。
第二步,登录phpcms的phpsso ――>系统设置――>UCenter配置 API地址可以在DZ――->站长――>UCenter设置中查看 数据库信息按照你的实际情况进行填写,数据库密码不能为空哦,否则测试会失败的!!!!
UCenter表前缀不能直接写表名前缀,必须使用格式为:`数据库名`.表名前缀
提交后进DZ的应用列表可以看到新增的应用通信成功了! 第三步,你会发现以下几种情况:
1) phpcms登录的用户可以同步到discuz
2) phpcms退出时无法同步到discuz
3) discuz登录无法同步到phpcms
4) discuz退出无法同步到phpcms
解决办法:
Phpcms退出无法同步到discuz的原因是
由于phpcms\phpsso_server\phpcms\modules\phpsso \classes\ phpsso.class.php文件中的__construct函数解析出post[data]为空情况下
直接exit操作导致Javascript语 句无法输出,简单做法是注释掉exit即可 通过以上操作就可以使用phpcms退出能够同步到discuz了
第四步,处理discuz登录无法同步到phpcms的情况
Discuz登录无法同步到phpcms
Discuz退出无法同步到phpcms
解决办法:
修改discuz的登录代码
1、 修改 template\default\member\login.htm 第 40行 行,删除 onsubmit="{if $this->setting['pwdsafety']}pwmd5('password3_$loginhash');
{/if}pwdclear = 1;ajaxpost('loginform_$loginhash', 'returnmessage_$loginhash', 'returnmessage_$loginhash', 'onerror');
return false;" 2、 修改 template\default\member\login_s imple.htm 第 3 行,删除 onsubmit="return lsSubmit()" 3、 修改 /source/function/function_message.php 第 78 行,查找 $param['header'] = true;
替换为:
$param['header'] = false; 找到DZ文件夹下的uc_client\data\cache\apps.php,找到该文件下是否存在我们新增的应用phpcms,如果不存在,
则需要新增,复制uc_server\data\cache\apps.php中的项目信息数组到该文件中 2 =>
array (
'appid' => '2',
'type' => 'OTHER',
'name' => 'phpcms',
'url' => 'http://localhost/hi0556/phpsso_server',
'authkey' => 'a97cvX78Rg/OtVswGhVBXxa7MUcyWgI4aZghoUI',
'ip' => '',
'viewprourl' => '',
'apifilename' => 'uc.php',
'charset' => '',
'dbcharset' => '',
'synlogin' => '1',
'recvnote' => '1',
'extra' =>
array (
'apppath' => '',
'extraurl' =>
array (
),
),
'tagtemplates' => '<?xml version="1.0" encoding="ISO-8859-1"?>
<root>
<item id="template"><![CDATA[]]></item>
</root>',
'allowips' => '',
),
Phpcms注册的会有在第一次登录discuz时需要激活一次,这问题可以在discuz后台里面解决:
Discuz后台――>站长――>UCenter设置,拉到最后有个“是否允许其他应用的会有在站点激活”和“是否允许直接激活”,两个都选择“是”然后提交,即可解决此问题

  

phpcms 整合 discuz!的更多相关文章

  1. phpcms V9 整合 Discuz! X2 教程

    整合原理: UCenter 作服务端:phpsso 与 Discuz! 分别作 UCenter 的客户端应用:phpsso 与 Discuz! 通过 UCenter 发生交互. phpcms 通过 p ...

  2. drupal7整合Discuz康盛UC用户中心ucenter,ucuser模块

    drupal7整合Discuz康盛UC用户中心ucenter,ucuser模块Drupal7整合UC用户心的模块,ucenter,康盛这个用户中心我就不多说了哈.参考了以前不知在哪里下载的一个drup ...

  3. 织梦dedecms整合discuz论坛的操作方法

    织梦dedecms和discuz论坛整合主要用途,是让两个系统共享用户数据,同一个用户可以在两个网站都可以登录.在我们制作织梦cms模板的时候,有时需要整合discuz里的东细.本文主要讲解一下ded ...

  4. discuz+ecmall+phpcms整合

    所需软件 discuzx1.5 (包含ucenter1.5) ecmall2.3 phpcms v9.5 1.先安装discuz1.5 2.然后安装ecmall2.3 3.最后安装phpcms v9. ...

  5. phpcms与discuz的ucenter整合

    1.安装phpcms系统,域名为pc.me   2.安装discuz,并选择安上uc_server,域名为dz.me   3.在phpcms下phpsso的系统设置   4.到ucenter管理中心- ...

  6. 利用ucenter整合discuz数据

    由于项目需要,需要用到discuz论坛用户的数据,所以想到利用ucenter获取数据.以下为整合ucenter的过程. 1.首先你需要下载官方demo:http://faq.comsenz.com/l ...

  7. destoon 深度整合discuz x2 UC 之免邮箱二次验证

    destoon中member/my.php,信息发布入口处判断是否已在dx中做了验证,如果已经验证,则不再提示验证,否则其中dt的验证页面. 在home.php.php. group.php. for ...

  8. jsp整合discuz

    转自:http://blog.sina.com.cn/s/blog_49298ed001000a99.html     最近在实验室做项目用到的一个东西,拿来介绍一下.       需求:现有行业应用 ...

  9. ecshop整合discuz教程完美教程

    所需软件: ecshop安装包:    ECShop_V2.7.3_UTF8_release1106.rarucenter安装包:   UCenter_1.6.0_SC_UTF8.zipdiscuz! ...

随机推荐

  1. 深入理解JS的闭包

    闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域. 变量的作用域 ...

  2. selenium 定位元素

    一.单个元素的定位方式: By.className(className))By.cssSelector(selector)By.id(id)By.linkText(linkText)By.name(n ...

  3. mysql 关系表 分组读取的方法

    关系表 是一个一对多的表 我们用的时候往往希望得到 array( a=>array(1,2,3,4....), b=>array(3,4,5,6,7...) ) 这样的数组 所以我们可以使 ...

  4. split分割大文件--包含通过awk按规则分割文件到对应子文件

    当对一个大文件进行传输或者分析的时候,一个可以参考的办法是先通过split对文件进行分割,再对每个子文件进行处理,如果需要合并再进行合并. split函数可以按文件大小或者行数来进行分割. -a :  ...

  5. Angular 之坑??

    1. 场景:bootstrap的popup画面中有一个select元素, <select > <option> 1 </option> <option ng- ...

  6. vtkQuadratic创建半球面

    用的关键类:vtkQuadric.vtkSampleFunction.vtkContourFilter:用于创建方框的类vtkOutlineFilter #ifndef INITIAL_OPENGL ...

  7. gulp 实现 js、css,img 合并和压缩

    前提条件,知道如何安装nodejs.gulp,这里不做介绍,可以自行google 实现此功能需要安装的gulp工具有如下 npm install gulp-htmlmin gulp-imagemin ...

  8. Linux学习之十--.Net Core环境搭建以及Nginx的搭建

    一.Centos7下.Net Core 环境安装: 链接:https://www.microsoft.com/net/core#linuxcentos 按照步骤来: yum install libun ...

  9. iOS 强制退出程序APP代码

    1.先po代码 UIAlertView* alert = [[UIAlertView alloc] initWithTitle:self.exitapplication message:@" ...

  10. angularjs 中的setTimeout(),setInterval() / $interval 和 $timeout

    $interval window.setInterval的Angular包装形式.Fn是每次延迟时间后被执行的函数. 间隔函数的返回值是一个承诺.这个承诺将在每个间隔刻度被通知,并且到达规定迭代次数后 ...