公告:如果您的账号不能登录,可能是系统对您账号进行了保护,我们发现系统中存在着不安全密码,故对其重置,请您重新激活账号,对于给您造成的不便,敬请谅解!
论坛风格切换切换到宽版
  • 2713阅读
  • 7回复

DEDECMS整合Discuz2.5实现双向登录 [复制链接]

上一主题 下一主题
离线zzj801009
 

发帖
339
贡献值
381
威望值
54
技术分
0
织梦币
0
只看楼主 倒序阅读 使用道具 0 发表于: 2014-03-06

   1、进去织梦后台--->模块--->模块管理。看下右面找下ucenter模块。后面有下载,下载好有安装,首先要把这步安装好了,安装好以后,点模块就可以看到下面多个ucenter模块。然后就开始填写信息吧。关键点就在这里怎么填写。

    2、填写ucenter信息,这里是关键,具体填写信息如下:

       a、服务端地址:就是你之前装bbs的ucenter地址,默认的是你的域名/bbs/uc_server  

b、服务器端IP:就是填写你网站所在的服务器IP地址。

       c、通信密钥: 这里的密钥要和ucenter后台的相同,不然通信会失败。好像安装过后就有这个密钥了,可以复制,需要复制到ucenter后台。

d、数据库信息:这里包括:数据库IP(数据库和程序在一个服务器写localhost也可以)、数据库名、数据库用户名、数据库密码。这些应该不需要说了,数据库表前缀,默认是pre_ucenter_   。到这里织梦后台的就完成了。

    3.进入ucenter后台填可以看到通信成功啦,dz本来就是和ucenter通信的,所以dz和织梦通信也就成功了。

    4.把DZ通信密钥复制分别替换已经通信成功的织梦密钥和织梦后台密钥

    5.把织梦后台,DZ后台和UC后台的服务端IP清空,数据库服务器填写:localhost

    6.去DZ目录config文件夹config_ucenter_default.php文件把第22行密钥换成和你DZ织梦一样的密钥

    7。DZ后台站长UC设置把是否直接激活选是

    8.目录下的api/uc.php

   查找第180行

   function synlogin($get, $post) {

                global $_G;

                if(!API_SYNLOGIN) {

                        return API_RETURN_FORBIDDEN;

                }

                header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"');

                $cookietime = 31536000;

                $uid = intval($get['uid']);

                if(($member = getuserbyuid($uid, 1))) {

                        dsetcookie('auth', authcode("$member[password]\t$member[uid]", 'ENCODE'), $cookietime);

                }

        }

替换成

function synlogin($get, $post) {

global $_G;

            

if(!API_SYNLOGIN) {

return API_RETURN_FORBIDDEN;

}

            

header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"');

            

$cookietime = 31536000;

$uid = intval($get['uid']);

$query = DB::query("SELECT uid, username, password FROM ".DB::table('common_member')." WHERE uid='$uid'");

if($member = DB::fetch($query)) {

dsetcookie('auth', authcode("$member[password]\t$member[uid]", 'ENCODE'), $cookietime);

}else{

            

$username = $get['username'];

$query = DB::query("SELECT uid, username, password,email FROM ".DB::table('ucenter_members')." WHERE username='$username'");

$member = DB::fetch($query);

$password = $member['password'];

$email = $member['email'];

$ip = $_SERVER['REMOTE_ADDR'];

$time = time();

            

            

$userdata = array(

'uid' => $uid,

'username' => $username,

'password' => $password,

'email' => $email,

'adminid' => 0,

'groupid' => 10,

'regdate' => $time,

'credits' => 0,

'timeoffset' => 9999

);

DB::insert('common_member', $userdata);

            

$status_data = array(

'uid' => $uid,

'regip' => $ip,

'lastip' => $ip,

'lastvisit' => $time,

'lastactivity' => $time,

'lastpost' => 0,

'lastsendmail' => 0,

);

DB::insert('common_member_status', $status_data);

DB::insert('common_member_profile', array('uid' => $uid));

DB::insert('common_member_field_forum', array('uid' => $uid));

DB::insert('common_member_field_home', array('uid' => $uid));

DB::insert('common_member_count', array('uid' => $uid));

DB::query("UPDATE ".DB::table('common_setting')." SET svalue='$username' WHERE skey='lastmember'");

            

$query = DB::query("SELECT uid, username, password FROM ".DB::table('common_member')." WHERE uid='$uid'");

if($member = DB::fetch($query)) {

dsetcookie('auth', authcode("$member[password]\t$member[uid]", 'ENCODE'), $cookietime);

}

}

            

}

// end

这样就可以双向同步啦!2.5我实验成功 3.1我是没弄没成功只能实现网站到论坛同步论坛到网站不行  如果不能双向DZ后台站长UC设置把头像设置成静态

离线leizhiwen

发帖
534
贡献值
507
威望值
85
技术分
0
织梦币
0
只看该作者 1 发表于: 2014-04-09
是同步登录登出?
 
离线zzj801009

发帖
339
贡献值
381
威望值
54
技术分
0
织梦币
0
只看该作者 2 发表于: 2014-04-11
是的 双站 双向同步
 
离线nybwf

发帖
601
贡献值
819
威望值
61
技术分
0
织梦币
0
只看该作者 3 发表于: 2014-04-18
很不错的方法,不过论坛查的比较严呀。
离线hssix

发帖
4
贡献值
35
威望值
15
技术分
0
织梦币
0
只看该作者 4 发表于: 2014-04-28
大神,跪求如何与3.1双向的方法
离线vocalsir

发帖
209
贡献值
231
威望值
21
技术分
0
织梦币
0
只看该作者 5 发表于: 2014-06-12
感谢分享方法
离线shanhoo

发帖
41
贡献值
29
威望值
6
技术分
0
织梦币
0
只看该作者 6 发表于: 2014-06-15
上面的替换代码是替换哪个uc    uc.php有好几个
离线p-l

发帖
44
贡献值
0
威望值
9
技术分
0
织梦币
0
只看该作者 7 发表于: 2014-06-28
很不错的方法
快速回复
限100 字节
理智评论文明上网,拒绝恶意谩骂;
 
上一个 下一个