phpcms 整合 discuz!

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

而后填写应用相关信息:
        一、应用类型选择“其余”
        二、应该名称填写“phpcms”                //此处能够本身定义名称
        三、应用的主URL填 http://你的域名/phpsso_server         //个人是http://localhost/hi0556/phpsso_server
        四、通信密钥如今不填写,保存的时候会自动生成,后面会用到此密钥
        五、是否开启同步登陆选择“是”
        六、是否接受通知选择“是”

接着点击提交,此时看到应用列表,可是通信状态是失败

解决办法,进入第二步操做。
第二步,登陆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的登陆代码
一、        修改 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;"

二、        修改 template\default\member\login_s imple.htm 第 3 行,删除

onsubmit="return lsSubmit()"

三、        修改 /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设置,拉到最后有个“是否容许其余应用的会有在站点激活”和“是否容许直接激活”,两个都选择“是”而后提交,便可解决此问题

  

相关文章
相关标签/搜索