新闻中心

解决ecshop2.73整合融入Discuz X3.0出现ecshop新注册的用户到discuz登陆需要激活

作者 / 无忧主机 时间 2013-08-06 21:05:19

Discuz X3.0论坛ecshop这两个不同类型的平台的王者结合,总是能产生1+1>2的能量的,使用起来也是非常方便的,不会的站长可以参考下“ecmall 2.3.0多用户商城系统整合UCenter和discuz x2.5”,虽然说这个教程是之前的版本的,但是大体上是没什么区别的,无忧小编会抽个空更新这篇文章的,不过就算有教程,一些很多新手站长在操作Discuz_X3.0和ecshop2.73整合的过程中,还是很可能会遇到一些问题,无忧小编今天整理一些常见的问题,并把解决方法提供出来,供大家参考一下: 通信失败问题; 解决方法:查看Ucenter后台->应用管理,顶部提示如果通信失败尝试修改Ucenter的IP地址,进去一看如果IP是127.0.0.1,直接去掉,问题解决; 另一个方法是同步下站点信息,如果上述方法无效的情况下可以使用。 通信成功,但是ecshop和discuz不能同步登陆; 解决方法: 通信成功但是不能同步登陆,用火狐浏览器的firebug跟踪请求发现根本没有同步登陆的请求,而且还报错:Bad Request,Invalid HostName,这个时候可以去discuz后台更新缓存,这个应该是设置完后没有更新缓存的缘故。 ecshop新注册的用户到discuz登陆需要激活; 解决方法: 找到discuz下的api目录中的uc.php;修改以下代码

if($member = DB::fetch($query)) {
dsetcookie('auth', authcode("$member[password]\t$member[uid]", 'ENCODE'), $cookietime);
}
在其后面插入下面的代码:
else{//非激活状态下写入
$query = DB::query("SELECT email FROM ".DB::table('ucenter_members')." WHERE uid='$uid'");
if($a = DB::fetch($query)){
$email = $a['emaiil'];
}else{
$email = '';
}
$userdata = array(
'uid' = $get['uid'],
'username' = $get['username'],
'password' = $get['password'],
'email' = $email,
'adminid' = 0,
'groupid' = 10,
'regdate' = $get['time'],
'credits' = 0,
'timeoffset' = 9999
);
DB::insert('common_member', $userdata);
DB::insert('common_member_count', array('uid'=>$get['uid']));
dsetcookie('auth', authcode("$get[password]\t$get[uid]", 'ENCODE'), $cookietime);
}


  


无忧主机为ecshop和Discuz论坛提供最好的香港免备案<a href="http://www.5p1hp.com">PHP虚拟主机</a>解决方案。让您的ecshop和discuz论坛更加快速、稳定。

本文地址:https://www.51php.com/discuz/12024.html

1
1
1
1
1
1
1

客户服务热线

0791-8623-3537

在线客服