解密帝国网站管理系统v4.6  共享内容管理饕餮盛宴


EmpireCMS4.6【饕餮盛宴】系列之六:万能会员接口

使用帝国CMS万能会员整合接口可以整合任何MYSQL的会员系统。

本文内容讲解:万能会员整合接口通行证接口

一、万能会员整合接口
  万能会员接口可以实现帝国CMS与任何MYSQL系统的会员帐号共用。

整合步骤说明:
1、复制/上传接口程序包里的“update”目录到帝国CMS的“e”目录;
2、运行接口程序“e/update/index.php”,依提示设置好相应的信息即可安装接口完毕;
3、删除e/update里的文件;
4、接口整合完毕。

·举例说明:使用万能会员接口整合DISCUZ5.5
1、从官方下载万能会员整合接口程序包,解压后复制接口程序包里的“update”目录到帝国CMS的“e”目录。



2、运行接口程序“e/update/index.php”,进入如下界面:



因为DISCUZ有现成范例,所以我们直接选择接口范例的“Discuz论坛”,选择后只需设置用户表与会员注册地址,然后点击提交即可。
(说明:下图中“discuz5”是指装Discuz的数据库名,“cdb5_”为装Discuz的数据表前缀。)



点击提交后会提示接口设置完毕,如下图:



3、为了安全,请删除e/update里的文件。

4、至此,万能接口整合完毕。

嘿嘿,现在可以在帝国CMS下使用DISCUZ帐号登陆了。
帝国的后台也可以直接管理DISCUZ的会员了(后台->“控制面板”->“会员管理”),如下图:



说明:整合会员接口后系统直接使用的是DISCUZ的会员表,所有会员注册是直接转到DISCUZ。

  
有的人还不满足于共用会员帐号:“我要实现同时注册、同时登陆、同时退出”。当然没有问题,可以再整合通行证接口。

二、通行证接口

  通行证接口可以实现被整合系统与帝国CMS同步注册、登录与退出,是万能会员接口的再次升华。
目前官方提供的通行证接口有:DISCUZ、PHPWIND、动网论坛PHP。

整合步骤说明:
1、安装万能会员接口;
2、修改通行证接口包里的通行证参数配置文件;
3、复制通行证接口包里的所有文件到被整合程序的目录;
4、通行证接口整合完毕。

·举例说明:整合DISCUZ5.5通行证接口
1、安装万能会员接口
由于上面我们安装了会员接口,所以现在只需要设置通行证的项即可。复制万能会员接口程序到e/update并运行接口程序,设置DISCUZ的登陆与退出地址,如下图:



点击提交后会提示接口设置完毕,如下图:



2、修改通行证接口包里的通行证参数配置文件
用记事本打开程序包里的LoginDiscuz.php文件,然后设置“帝国CMS安装地址”参数并保存文件,如下图:
说明:测试时帝国的安装目录与DISCUZ的安装目录关系如下:
/discuz55/
/ecms46test/



如果DISCUZ论坛跟帝国CMS不是使用同一个域名,要设置“cookie 作用域”为一级域名,“cookie作用路径”为"/",如:
$EcmsCookieDomain=".phome.net"; // cookie 作用域

$EcmsCookiePath="/"; // cookie 作用路径



3、复制通行证接口包里的所有文件到被整合程序的目录



4、至此,通行证接口整合完毕。

5、如果你模板里显示会员状态使用的是:“e/member/iframe”框架页,那需要修改“登陆状态模板”(后台->"模板管理"->"公共模板"->"修改登陆状态模板"),将登陆的表单改为DISCUZ的登陆表单。
说明:登陆状态模板范例 (点击查看,discuz/phpwind/dvbbs)

6、现在我们测试下通行证效果:
图1:(到DISCUZ登陆会员)



图2:(登陆论坛后论坛会员状态)



图3:(登陆论坛后帝国CMS会员状态)



其它说明:
如果要整合积分直接设置万能会员接口:把“点数字段”改为相应的积分字段名即可。
如果要整合会员组,帝国CMS与DISCUZ必须建立相同会员组与会员组ID。

上面举例的只是DISCUZ,其它程序整合步骤均相同的。

附:DISCUZ登陆状态模板范例DISCUZ登陆状态模板范例DISCUZ登陆状态模板范例

DISCUZ登陆状态模板范例
说明:记得修改模板中的红色项目(表单提交地址与登陆返回地址)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<title>登陆</title>
<LINK href="../../data/images/qcss.css" rel=stylesheet>
</head>
<body bgcolor="#ededed" topmargin="0">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<form name=login method=post action="/bbs/logging.php?action=login" target=_parent>
<input type="hidden" name="referer" value="登陆返回地址?.php">
<input class="radio" type="hidden" name="loginfield" value="username">
<tr>
<td height="23" align="center">
<div align="left">用户名
<input name="username" type="text" size="8">
密码
<input name="password" type="password" size="8">
<select name="cookietime" id="cookietime">
<option value="0">不保存</option>
<option value="3600">一小时</option>
<option value="86400">一天</option>
<option value="2592000">一个月</option>
<option value="315360000">永久</option>
</select>
<input type="submit" name="loginsubmit" value="登陆">
<input type="button" name="Submit2" value="注册" onclick="window.open('../register');">
<input type="hidden" name="action" value="login" />
</div>
</td>
</tr>
</form>
</table>
</body>
</html>
[!--empirenews.template--]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>登陆</title>
<LINK href="../../data/images/qcss.css" rel=stylesheet>
</head>
<body bgcolor="#ededed" topmargin="0">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td height="23" align="center">
<div align="left">&raquo;&nbsp;<font color=red><b>[!--username--]</b></font>&nbsp;<a href="../my" target="_parent">[!--groupname--]</a>&nbsp;[!--havemsg--]&nbsp;<a href="../msg" target=_blank>短信息</a>&nbsp;&nbsp;<a href="../fava" target=_blank>收藏夹</a>&nbsp;&nbsp;<a href="../cp" target="_parent">控制面板</a>&nbsp;&nbsp;<a href="../../enews?enews=exit&prtype=9" target=_parent onclick="return confirm('确认要退出?');">退出</a>
</div>
</td>
</tr>
</table>
</body>
</html>