
这个提示是因为从微擎官方服务器获取请示失败,刷新页面重试即可,如果解决不了提交微擎工单,由微擎官方解决。网络原因或是微擎服务器羡稿原因,刷新滚派乎页面重试即可,如果解决不了提交微擎工单,大悉由微擎官方解决。
因为公众号修改了获取用户基本信息的返回字段内容,导致微擎获取用户基本信息时无法获取到nickname,而需要反复跳转。并且特别是电脑端打开都会d出授权d窗
通过修改 framework/model/mc.mod.php
mc_oauth_account_userinfo 函数,以下片段
if (intval($_W['account']['oauth']['level']) <4 &&!in_array($_W['account']['oauth']['level'], array(ACCOUNT_TYPE_APP_NORMAL, ACCOUNT_TYPE_APP_AUTH, ACCOUNT_TYPE_WXAPP_WORK))) { return error(-3, '公众号非认察尺证服务号, 无法获取用户信息.')}
这个判断以下内容改为下方
if (!empty($_SESSION['openid']) &&intval($_W['account']['level']) >= 3) {
$oauth_account = WeAccount::createByUniacid()
$userinfo = $oauth_account->fansQueryInfo($_SESSION['openid'])
//查询用户信息,用于判断是否已保存在粉丝记录
$fan = mc_fansinfo($_SESSION['openid'])
//获取到的用户基础信卖核息未出错,且不为空
if(empty($fan) &&!is_error($userinfo) &&!empty($userinfo) &&!empty($userinfo['openid']) ){
$record = array()
$record['updatetime'] = TIMESTAMP
$record['nickname'] = ''
$record['tag'] = base64_encode(iserializer($userinfo))
$record['openid'] = $_SESSION['openid'] $record['acid'] = $_W['acid']
$record['uniacid'] = $_W['uniacid']
$record['unionid'] = $userinfo['unionid']
$record['user_from'] = $_W['account']->typeSign == 'wxapp' ? 1 : 0
pdo_insert('mc_mapping_fans', $record)
}
//获取的用户信息不为空,且已经存在昵称。
else if (!is_error($userinfo) &&!empty($fan) &&!empty($fan['nickname']) &&is_array($userinfo) ){
//返回粉丝,已有的粉丝信息 ==》这么改之后,系统里的粉丝用户败配高信息就没办法实时最新了。腾讯修改返回信息规则之后只有使用,d窗授权才能获取到用户的昵称、头像
$userinfo['nickname'] = stripcslashes($fan['nickname'])
$userinfo['avatar'] = $fan['headimgurl']
$_SESSION['userinfo'] = base64_encode(iserializer($userinfo))
$record = array(
'updatetime' =>TIMESTAMP,
'follow' =>$userinfo['subscribe'],
'followtime' =>$userinfo['subscribe_time'],
'unionid' =>$userinfo['unionid'],
'tag' =>base64_encode(iserializer($userinfo))
)
//更新粉丝的订阅 状态信息
pdo_update('mc_mapping_fans', $record, array('openid' =>$_SESSION['openid'], 'uniacid' =>$_W['uniacid']))
if (!empty($fan['uid']) || !empty($_SESSION['uid'])) {
$uid = intval($fan['uid'])
if (empty($uid)) {
$uid = intval($_SESSION['uid'])
}
$member = mc_fetch($uid, array('nickname', 'gender', 'residecity', 'resideprovince', 'nationality', 'avatar'))
$record = array()
if (empty($member['nickname']) &&!empty($userinfo['nickname'])) {
$record['nickname'] = stripslashes($userinfo['nickname'])
}
if (empty($member['avatar']) &&!empty($userinfo['headimgurl'])) {
$record['avatar'] = $userinfo['headimgurl']
}
if (!empty($record)) {
pdo_update('mc_members', $record, array('uid' =>$uid))
cache_build_memberinfo($uid)
}
}return $userinfo
}
}
替换到这个地方
$state = 'we7sid-' . $_W['session_id']
$_SESSION['dest_url'] = urlencode($_W['siteurl'])
以上作为记录,备忘。
登陆微擎直接跳转安装模液竖块的后台,而不是微擎的管理页面答埋搭。
修清拿改路径 web\source\user\login.ctrl.php line 134
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)