getRow("SELECT * FROM pre_user WHERE uid='{$uid}' limit 1"); if(!$userrow)sysmsg('uid不存在'); $certtoken = $userrow['certtoken']; $channel = \lib\Channel::get($conf['cert_channel']); if(!$channel)sysmsg('当前实名认证通道信息不存在'); $alipay_config = require(PLUGIN_ROOT.$channel['plugin'].'/inc/config.php'); try{ $certify = new \Alipay\AlipayCertifyService($alipay_config); $certifyResult = $certify->query($certtoken); if($certifyResult['passed'] == 'T'){ if($DB->exec("update `pre_user` set `cert`=1 where `uid`='$uid'")){ $DB->exec("update `pre_user` set `certtime`='$date' where `uid`='$uid'"); if($conf['cert_money']>0){ changeUserMoney($uid, $conf['cert_money'], false, '实名认证'); } } }else{ sysmsg('
实名认证未通过('.$certifyResult['fail_reason'] .')
'); } }catch(Exception $e){ sysmsg('支付宝接口返回异常'.$e->getMessage()); } }elseif($conf['cert_open'] == 3){ //支付宝实名信息验证 $uid = authcode(str_replace(' ', '+', $_GET['state']), 'DECODE', SYS_KEY); if(!$uid || $uid<=0)sysmsg('state校验失败'); $uid = intval($uid); $channel = \lib\Channel::get($conf['cert_channel']); if(!$channel)sysmsg('当前支付通道信息不存在'); $alipay_config = require(PLUGIN_ROOT.$channel['plugin'].'/inc/config.php'); $certdoc = new \Alipay\AlipayCertdocService($alipay_config); try{ $tokenArr = $certdoc->getToken($_GET['auth_code']); $result = $certdoc->consult($_GET['cert_verify_id'], $tokenArr['access_token']); }catch(Exception $e){ sysmsg('实名证件信息比对验证失败!'.$e->getMessage()); } if($result['passed'] == 'T'){ if(!empty($tokenArr['user_id'])){ $openid = $tokenArr['user_id']; }else{ $openid = $tokenArr['open_id']; } $DB->exec("update `pre_user` set `cert`=1,`certtime`=NOW(),`alipay_uid`=:user_id where `uid`=:uid", [':user_id'=>$openid, ':uid'=>$uid]); if($conf['cert_money']>0){ changeUserMoney($uid, $conf['cert_money'], false, '实名认证'); } @header('Content-Type: text/html; charset=UTF-8'); if($islogin2==1){ exit(""); } }else{ $msg = '实名认证失败,原因:'.$result['fail_reason'].''; if($islogin2==1)$msg .= '

返回重新认证'; sysmsg('
'.$msg.'
'); } }elseif($conf['cert_open'] == 4){ //微信扫码实名认证 $uid = intval($_GET['state']); $AuthToken = isset($_GET['AuthToken'])?$_GET['AuthToken']:exit('param is error'); $userrow=$DB->getRow("SELECT * FROM pre_user WHERE uid='{$uid}' limit 1"); if(!$userrow)sysmsg('uid不存在'); if($AuthToken!=$userrow['certtoken'])sysmsg('AuthToken不正确'); $qcloud = new \lib\QcloudFaceid($conf['cert_qcloudid'], $conf['cert_qcloudkey']); $result = $qcloud->GetRealNameAuthResult($AuthToken); if(isset($result['ResultType'])){ if($result['ResultType'] == '0'){ if($DB->exec("update `pre_user` set `cert`=1 where `uid`='$uid'")){ $DB->exec("update `pre_user` set `certtime`='$date' where `uid`='$uid'"); if($conf['cert_money']>0){ changeUserMoney($uid, $conf['cert_money'], false, '实名认证'); } } }else{ $msg = '实名认证未通过'; if($result['ResultType'] == '-1'){ $msg .= ':姓名和身份证号不一致'; }elseif($result['ResultType'] == '-2'){ $msg .= ':姓名和微信实名姓名不一致'; }elseif($result['ResultType'] == '-3'){ $msg .= ':微信号未实名'; }else{ $msg .= '(ResultType='.$result['ResultType'].')'; } sysmsg('
'.$msg.'
'); } }else{ sysmsg('接口返回异常['.$result['Error']['Code'].']'.$result['Error']['Message']); } }elseif($conf['cert_open'] == 5){ //阿里云金融级实人认证 $uid = authcode($_GET['state'], 'DECODE', SYS_KEY); if(!$uid || $uid<=0)sysmsg('state校验失败'); $uid = intval($uid); $userrow=$DB->getRow("SELECT * FROM pre_user WHERE uid='{$uid}' limit 1"); if(!$userrow)sysmsg('uid不存在'); $certtoken = $userrow['certtoken']; $aliyun = new \lib\AliyunCertify($conf['cert_aliyunid'], $conf['cert_aliyunkey'], $conf['cert_aliyunsceneid']); $result = $aliyun->query($certtoken); if (isset($result['Code']) && $result['Code']==200) { if($result['Data']['passed'] == 'T'){ if($DB->exec("update `pre_user` set `cert`=1 where `uid`='$uid'")){ $DB->exec("update `pre_user` set `certtime`='$date' where `uid`='$uid'"); if($conf['cert_money']>0){ changeUserMoney($uid, $conf['cert_money'], false, '实名认证'); } } }else{ sysmsg('
实名认证未通过('.$result['Data']['fail_reason'].')
'); } }else{ sysmsg('接口返回异常['.$result['Code'].']'.$result['Message']); } } if($islogin2==1){ exit(""); } @header('Content-Type: text/html; charset=UTF-8'); include PAYPAGE_ROOT.'certok.php';