discuzuc.php改名,ucenter整合uc.php接口,discuz上初次注册会员后,即可实现自动登录的方法...

uc的整合策略中,是必须先在论坛上登录,才会调用同步接口,所以,在论坛上首次注册会员,并不能同步到其它应用网站.需要注册后,先退出登录,再重新登录论坛,其它应用才会自动同步登录,存在明显缺陷.

解决办法为修改系统文件.

一,

修改论坛目录中对应的,\uc_client\model\user.php 中的function add_user 函数

把大约131行的

$salt = substr(uniqid(rand()), -6);

整体替换为

$salt = substr(uniqid(rand()), -6);

$password2 = md5($password);

然后,在return $uid;

的上面增加下面这段代码

$time2=date('Y-m-d H:i:s',$this->base->time);

$this->db->query("INSERT INTO admin_book.hbdx_users SET uc_id='$uid',user_mail='$email',user_name='$username',user_group='同步注册会员',user_displayname='$username',registerdate='$time2',user_pass='$password2',user_integration='10'");

/注意,其中,admin_book 表示book网站对应的数据库名,hbdx_users 表示表名,可以相应修改为正在使用的.

二,同时,要修改论坛目录中的.

\source\class\class_member.php

找到大约926行

同时,修改论坛目录中的.

\source\class\class_member.php

找到大约926行的

$extra = array(

'showid' => 'succeedmessage',

'extrajs' => '

'setTimeout("window.location.href =\''.$href.'\';", 3000);'.

'$(\'succeedmessage_href\').href = \''.$href.'\';'.

'$(\'main_message\').style.display = \'none\';'.

'$(\'main_succeed\').style.display = \'\';'.

'$(\'succeedlocation\').innerHTML = \''.lang('message', $locationmessage).'\';'.

'',

'striptags' => false,

);

整体替换为

$ucsynlogin = '';

if($_G['setting']['allowsynlogin']) {

loaducenter();

$ucsynlogin = uc_user_synlogin($_G['uid']);

}

$extra = array(

'showid' => 'succeedmessage',

'extrajs' => '

'setTimeout("window.location.href =\''.$href.'\';", '.$refreshtime.');'.

'$(\'succeedmessage_href\').href = \''.$href.'\';'.

'$(\'main_message\').style.display = \'none\';'.

'$(\'main_succeed\').style.display = \'\';'.

'$(\'succeedlocation\').innerHTML = \''.lang('message', $locationmessage).'\';'.

''.$ucsynlogin,

'striptags' => false,

);

//其实主要是在后面增加了这一句

//.$ucsynlogin ,从而实现论坛上初次注册的会员,就可以直接同步到另一站,不需要退出再登录一次.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值