phpcms php7.0,PHPCMS v9.1.7整合discuz X2 的解决办法

最近有不少朋友提出PHPCMS v9.1.7(20110909) 与 discuz 新版 X2 整合过程中有问题。由于PHPCMS V9中默认整合的Ucenter 版本为1.5.1 (即适用于 Discuz X1.5 以下 Discuz 7.0 之上的版本),而最新的Discuz X2 中升级了Ucenter 版本至 Ucenter 1.6 ,由于接口文件的变动,所以会导致一些无法同行问题。

现给出如下解决方案:

第一步:确定你的PHPCMS及PHPSSO版本为最新版v9.1.7(20110909)。注:截至发此文章时间最新版为该版本。

第二步:使用新的uc_client文件,打开phpsso_server\api\ 目录修改原uc_client目录名称为uc_client.1.5.1,然后将下面文件解压后覆盖到该目录下。

第三步:使用下面文件覆盖phpsso_server\phpcms\libs\functions\global.func.php 文件。注意:是phpsso_server中的global.func.php,不是cms中的!

第四步:登录phpsso后台,系统设置 > uc设置 ,配置相应的整合信息,如下图。注意:在前缀前增加数据库名称,格式如:`bbs`.pre_uc_

8aaf419c4844a43b86471e41fee4e2a0.png

第五步:登录Ucenter后台,添加应用,配置相应的信息,这里不详细说明,如图

fd228a8c914465fffb407dc302b36772.png

第六步:更新缓存,包括phpsso缓存,ucenter缓存,discuz 缓存。

此时你会发现从CMS中登录退出,论坛可以同步登录退出,但是在论坛登录退出无法同步登录退出cms,由于discuz本身的一些问题,为了解决该问题,我们需要修改一下discuz的代码。

第七步:修改Discuz中文件

1、修改 template\default\member\login.htm 第36行,删除ajaxpost('loginform_$loginhash','returnmessage_$loginhash','returnmessage_$loginhash', 'onerror');return false;

2、修改 template\default\member\login_simple.htm 第 2 行,删除οnsubmit="return lsSubmit()"

3、修改 /source/function/function_message.php 第 78 行,查找$param['header'] = true;

替换为:$param['header'] = false;

如果你是dzx1.5  则应该修改 /source/function/function_core.php  第 1458 行,查找$param['header'] = true;

替换为:$param['header'] = false;

以上便是PHPCMS v9.1.7(20110909)版本整合discuz X2 出现无法同行问题的解决方案,希望对大家有用!

PHPCMS 下载:

软件大小:8.32MB

软件类别:国产软件 | CMS建站

软件语言:简体中文

运行环境:PHP/Mysql

软件授权:免费版

更新时间:2015-12-28 10:37:39

软件大小:8.04MB

软件类别:国产软件 | CMS建站

软件语言:简体中文

运行环境:PHP/Mysql

软件授权:免费版

更新时间:2015-12-28 10:33:57

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 迁移至php7.1+mysql5.6+nginx的修改项目 已修改 : /phpcms/libs/classes/checkcode.class.php 已修改 : /phpcms/libs/classes/db_factory.class.php 已增加 : /phpcms/libs/classes/db_mysqli.class.php 已修改 : /phpcms/libs/classes/model.class.php 已修改 : /phpcms/libs/classes/template_cache.class.php 已修改 : /phpcms/libs/classes/update.class.php 已修改 : /phpcms/libs/functions/global.func.php 已修改 : /phpcms/modules/admin/cache_all.php 已修改 : /phpcms/modules/content/fields/editor/output.inc.php 已修改 : /phpcms/modules/content/fields/title/output.inc.php 2. 函数htmlspecialchars()在php7下严格校验编码,导致空白,修改为new_html_special_chars()方法: 已修改 : /phpcms/modules/content/fields/content_form.class.php 已修改 : /phpcms/modules/content/fields/omnipotent/field_edit_form.inc.php 已修改 : /phpcms/modules/content/fields/textarea/field_edit_form.inc.php 已修改 : /phpcms/modules/yp/fields/omnipotent/field_edit_form.inc.php 已修改 : /phpcms/modules/yp/fields/textarea/field_edit_form.inc.php 已修改 : /phpcms/modules/yp/fields/title/output.inc.php 已修改 : /phpcms/modules/yp/fields/yp_form.class.php 所有以上修改/增加的文件,均在下面压缩包中,建议下载后对比查看,不建议直接替换; phpcmsV9升级php7修改文件 [点击直接下载] 其中global.func.php仅修改不可替换,请自行对比文件改动的地方; 3.修改database.php的type值为mysqli; 注意事项: A.php7.1对函数参数个数严格校验,对函数形参一定要赋默认值,否则直接Fatal error: Uncaught ArgumentCountError: Too few arguments to function; B.htmlspecialchars严格编码,以前在php5.2下正常使用的,需要修改为 new_html_special_chars() 具体函数定义见 global.func.php; C.数据库5.6对老版本5.0的listorder-1问题,将字段设置为有符号即可;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值