/** *问题浏览量更新 */ public function pageViewAction() { //基础元素,必须参与验证 $View['PageId'] = abs(intval($this->request->PageId)); $View['ViewIP'] = urldecode(trim($this->request->ViewIP)); $View['Time'] = abs(intval($this->request->Time)); //URL验证码 $sign = $this->request->sign; //私钥,以后要移开到数据库存储 $p_sign = '5173'; $sign_to_check = base_common::check_sign($View, $p_sign); //不参与验证的元素 //验证URL是否来自可信的发信方 if ($sign_to_check == $sign) { //验证时间戳,时差超过600秒即认为非法 if (abs($View['Time'] - time()) <= 600) { $View['ViewIP'] = Base_Common::ip2long($View['ViewIP']); $InsertLog = $this->oView->addViewLog($View); if ($InsertLog) { $result = array('return' => 1, 'comment' => "添加成功"); } else { $result = array('return' => 2, 'comment' => "添加失败"); } } else { $result = array('return' => 0, 'comment' => "时间有误"); } } else { $result = array('return' => 0, 'comment' => "验证失败,请检查URL"); } echo json_encode($result); }
/** *账号生成 */ public function insertPvAction() { //基础元素,必须参与验证 $PV['PageId'] = abs(intval($this->request->PageId)); $PV['Time'] = abs(intval($this->request->Time)); $PV['IP'] = $this->request->IP ? $this->request->IP : "127.0.0.1"; $PV['Browser'] = $this->request->Browser; $PV['UserSourceId'] = abs(intval($this->request->UserSourceId)); $PV['UserSourceDetail'] = abs(intval($this->request->UserSourceDetail)); $PV['UserSourceProjectId'] = abs(intval($this->request->UserSourceProjectId)); $PV['UserSourceActionId'] = abs(intval($this->request->UserSourceActionId)); $PV['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; //URL验证码 $sign = $this->request->sign; //私钥,以后要移开到数据库存储 $p_sign = 'lm'; $sign_to_check = base_common::check_sign($PV, $p_sign); //不参与验证的元素 $PV['IP'] = Base_Common::ip2long($PV['IP']); //验证URL是否来自可信的发信方 if ($sign_to_check == $sign) { //验证时间戳,时差超过600秒即认为非法 if (abs($PV['Time'] - time()) <= 600) { unset($PV['ReturnType']); if ($PV['UserSourceId'] == 9 && $PV['UserSourceDetail'] == 24) { $insertLog = true; } else { $insertLog = $this->oPV->insertPvLog($PV); } if ($insertLog) { $result = array('return' => 1, 'comment' => "记录成功"); } else { $result = array('return' => 0, 'comment' => "记录失败"); } } else { $result = array('return' => 2, 'comment' => "时间有误"); } } else { $result = array('return' => 2, 'comment' => "验证失败,请检查URL"); } $PV['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; if ($PV['ReturnType'] == 1) { echo json_encode($result); } }
/** *获取服务器列表登录 */ public function getServerByIpAction() { //基础元素,必须参与验证 $Config['ServerIp'] = $this->request->ServerIp; $Config['Time'] = abs(intval($this->request->Time)); $Config['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; //URL验证码 $sign = trim($this->request->sign); //私钥,以后要移开到数据库存储 $p_sign = 'lm'; $sign_to_check = Base_common::check_sign($Config, $p_sign); //不参与验证的元素 //验证URL是否来自可信的发信方 if ($sign_to_check == $sign) { //验证时间戳,时差超过600秒即认为非法 if (abs($Config['Time'] - time()) <= 600) { if ($Config['ServerIp']) { $ServerIp = Base_Common::ip2long($Config['ServerIp']); $ServerInfo = $this->oServer->getByIp($ServerIp); if ($ServerInfo['ServerId']) { $result = array('return' => 1, 'ServerInfo' => $ServerInfo, 'comment' => '找到服务器'); } else { $result = array('return' => 2, 'comment' => '你所查询的IP不属于任何服务器'); } } else { $result = array('return' => 0, 'comment' => "请输入服务器IP"); } } else { $result = array('return' => 0, 'comment' => "时间有误"); } } else { $result = array('return' => 0, 'comment' => "验证失败,请检查URL"); } if ($Config['ReturnType'] == 1) { echo json_encode($result); } else { $r = $result['return'] . "|" . iconv('UTF-8', 'GBK', $result['comment']); if ($result['return'] == 1) { $r = $r . "|" . $result['ServerInfo']['ServerId'] . "|" . iconv('UTF-8', 'GBK', $result['ServerInfo']['name']); } echo $r; } }
/** *生成订单 */ public function createOrderAction() { //基础元素,必须参与验证 $Order['PayUserId'] = abs(intval($this->request->PayUserId)); $Order['AcceptUserId'] = abs(intval($this->request->AcceptUserId)); $Order['OrderTime'] = abs(intval($this->request->OrderTime)); $Order['ServerId'] = abs(intval($this->request->ServerId)) ? abs(intval($this->request->ServerId)) : 101001001; $Order['PassageId'] = abs(intval($this->request->PassageId)) ? abs(intval($this->request->PassageId)) : 0; $Order['SubPassageId'] = $this->request->SubPassageId ? $this->request->SubPassageId : ""; $Order['Coin'] = abs(intval($this->request->Coin)) ? abs(intval($this->request->Coin)) : 0; $Order['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; $Order['OrderIP'] = $this->request->OrderIP ? $this->request->OrderIP : "127.0.0.1"; //URL验证码 $sign = $this->request->sign; //私钥,以后要移开到数据库存储 $p_sign = 'lm'; //print_R($Order); $sign_to_check = Base_common::check_sign($Order, $p_sign); //不参与验证的元素 $Order['OrderIP'] = Base_Common::ip2long($Order['OrderIP']); //验证URL是否来自可信的发信方 if ($sign_to_check == $sign) { if ($Order['ServerId']) { //验证用户名有效性 if ($Order['AcceptUserId']) { if ($Order['PassageId']) { //验证时间戳,时差超过600秒即认为非法 if (abs($Order['OrderTime'] - time()) <= 600) { //查询用户 $AcceptUserInfo = $this->oUser->GetUserById($Order['AcceptUserId']); if ($AcceptUserInfo['UserId']) { //如果指定支付方 if ($Order['PayUserId']) { //查询用户 $PayUserInfo = $this->oUser->GetUserById($Order['PayUserId']); } //如果不指定支付方或者支付方确定存在 if ($PayUserInfo['UserId'] || $Order['PayUserId'] == 0) { //获取服务器信息 $ServerInfo = $this->oServer->getRow($Order['ServerId']); if ($ServerInfo['ServerId']) { if ($ServerInfo['AppId'] && $ServerInfo['PartnerId']) { $bind = array($ServerInfo['PartnerId'], $ServerInfo['AppId']); //验证游戏-平台信息 $PartnerInfo = $this->oPartnerApp->getRow($bind); if ($PartnerInfo['AppId'] && $PartnerInfo['PartnerId']) { $AppInfo = $this->oApp->getRow($PartnerInfo['AppId']); if ($AppInfo['AppId']) { //获取支付方式信息 $PassageInfo = $this->oPassage->getRow($Order['PassageId']); if ($PassageInfo['passage_id']) { $Order['AppId'] = $ServerInfo['AppId']; $Order['PartnerId'] = $ServerInfo['PartnerId']; $Order['Amount'] = $PassageInfo['finance_rate'] * $Order['Coin']; $Order['Credit'] = $PassageInfo['finance_rate'] * $Order['Coin']; $Order['ExchangeRate'] = $AppInfo['exchange_rate']; $Order['AppCoin'] = $AppInfo['exchange_rate'] * $Order['Coin']; $Order['OrderStatus'] = 0; $Order['UserSourceId'] = $AcceptUserInfo['UserSourceId']; $Order['UserSourceDetail'] = $AcceptUserInfo['UserSourceDetail']; $Order['UserSourceProjectId'] = $AcceptUserInfo['UserSourceProjectId']; $Order['UserSourceActionId'] = $AcceptUserInfo['UserSourceActionId']; $Order['UserRegTime'] = $AcceptUserInfo['UserRegTime']; unset($Order['ReturnType']); $createOrder = $this->oOrder->createOrder($Order); if (intval($createOrder)) { $result = array('return' => 1, 'OrderId' => $createOrder, 'comment' => "下单成功"); } else { $result = array('return' => 2, 'comment' => "下单失败"); } } else { $result = array('return' => 0, 'comment' => "您所选择的支付方式不存在"); } } else { $result = array('return' => 0, 'comment' => "您所选择的游戏不存在"); } } else { $result = array('return' => 0, 'comment' => "您所选择的游戏-平台不存在"); } } else { $result = array('return' => 0, 'comment' => "您所选择的服务器配置不完整"); } } else { $result = array('return' => 0, 'comment' => "您所选择的服务器不存在"); } } else { $result = array('return' => 0, 'comment' => "支付方用户不存在"); } } else { $result = array('return' => 2, 'comment' => "接收方用户不存在"); } } else { $result = array('return' => 0, 'comment' => "时间有误"); } } else { $result = array('return' => 0, 'comment' => "请选择支付方式"); } } else { $result = array('return' => 2, 'comment' => "请输入接收方用户ID"); } } else { $result = array('return' => 0, 'comment' => "请输入服务器"); } } else { $result = array('return' => 0, 'comment' => "验证失败,请检查URL"); } $Order['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; if ($Order['ReturnType'] == 1) { echo json_encode($result); } else { $r = $result['return'] . "|" . iconv('UTF-8', 'GBK', $result['comment']); if ($result['return'] == 1) { $r = $r . "|" . $result['LoginId'] . "|" . $result['adult']; } echo $r; } }
public function createKa91OrderAction() { //基础元素,必须参与验证 $Order['UserName'] = $this->request->UserName; $Order['OrderTime'] = abs(intval($this->request->OrderTime)); $Order['ServerId'] = abs(intval($this->request->ServerId)) ? abs(intval($this->request->ServerId)) : 101001001; $Order['SubPassageId'] = $this->request->SubPassageId ? $this->request->SubPassageId : ""; $Order['Coin'] = abs(intval($this->request->Coin)) ? abs(intval($this->request->Coin)) : 0; $Order['OrderIP'] = $this->request->OrderIP ? $this->request->OrderIP : "127.0.0.1"; $Order['PayIP'] = $this->request->PayIP ? $this->request->PayIP : "127.0.0.1"; $Order['PayTime'] = abs(intval($this->request->PayTime)); $Order['StageOrder'] = $this->request->StageOrder; //URL验证码 $sign = $this->request->sign; //私钥,以后要移开到数据库存储 $p_sign = 'lm'; $sign_to_check = Base_common::check_sign($Order, $p_sign); //不参与验证的元素 $Order['OrderIP'] = Base_Common::ip2long($Order['OrderIP']); $Order['PayIP'] = Base_Common::ip2long($Order['PayIP']); if (in_array($_SERVER["REMOTE_ADDR"], array('61.145.117.183', '61.145.117.184', '219.136.252.38', '121.9.211.6'))) { //验证URL是否来自可信的发信方 if ($sign_to_check == $sign) { if ($Order['ServerId']) { //验证用户名有效性 if ($Order['UserName']) { //验证时间戳,时差超过600秒即认为非法 if (abs($Order['PayTime'] - time()) <= 600) { //查询用户 $UserInfo = $this->oUser->GetUserByName($Order['UserName']); if ($UserInfo['UserId']) { $Order['PayUserId'] = $UserInfo['UserId']; $Order['AcceptUserId'] = $UserInfo['UserId']; //获取服务器信息 $ServerInfo = $this->oServer->getRow($Order['ServerId']); if ($ServerInfo['ServerId']) { if ($ServerInfo['AppId'] && $ServerInfo['PartnerId']) { $bind = array($ServerInfo['PartnerId'], $ServerInfo['AppId']); //验证游戏-平台信息 $PartnerInfo = $this->oPartnerApp->getRow($bind); if ($PartnerInfo['AppId'] && $PartnerInfo['PartnerId']) { $AppInfo = $this->oApp->getRow($PartnerInfo['AppId']); if ($AppInfo['AppId']) { //获取支付方式信息 $PassageInfo = $this->oPassage->getByPassage("Ka91"); if ($PassageInfo['passage_id']) { $checkStageOrder = $this->oPay->getKa91StageOrder($Order['StageOrder']); if ($checkStageOrder['StageOrder']) { $result = array('return' => 1, 'OrderId' => $checkStageOrder['OrderId'], 'comment' => "已经执行过,无需重复执行"); } else { $Order['PassageId'] = $PassageInfo['passage_id']; $Order['AppId'] = $ServerInfo['AppId']; $Order['PartnerId'] = $ServerInfo['PartnerId']; $Order['Amount'] = $PassageInfo['finance_rate'] * $Order['Coin']; $Order['Credit'] = $PassageInfo['finance_rate'] * $Order['Coin']; $Order['ExchangeRate'] = $AppInfo['exchange_rate']; $Order['AppCoin'] = $AppInfo['exchange_rate'] * $Order['Coin']; $Order['OrderStatus'] = 1; $Order['UserSourceId'] = $UserInfo['UserSourceId']; $Order['UserSourceDetail'] = $UserInfo['UserSourceDetail']; $Order['UserSourceProjectId'] = $UserInfo['UserSourceProjectId']; $Order['UserSourceActionId'] = $UserInfo['UserSourceActionId']; $Order['UserRegTime'] = $UserInfo['UserRegTime']; $Pay['PayUserId'] = $Order['PayUserId']; $Pay['AcceptUserId'] = $Order['AcceptUserId']; $Pay['PassageId'] = $Order['PassageId']; $Pay['SubPassageId'] = $Order['SubPassageId']; $Pay['PayIP'] = $Order['PayIP']; $Pay['AppId'] = $Order['AppId']; $Pay['PartnerId'] = $Order['PartnerId']; $Pay['PayTime'] = $Order['PayTime']; $Pay['PayedTime'] = $Order['PayTime']; $Pay['Coin'] = $Order['Coin']; $Pay['Amount'] = $Order['Amount']; $Pay['Credit'] = $Order['Credit']; $Pay['StageOrder'] = $Order['StageOrder']; $Pay['UserSourceId'] = $Order['UserSourceId']; $Pay['UserSourceDetail'] = $Order['UserSourceDetail']; $Pay['UserSourceProjectId'] = $Order['UserSourceProjectId']; $Pay['UserSourceActionId'] = $Order['UserSourceActionId']; $Pay['UserRegTime'] = $Order['UserRegTime']; unset($Order['StageOrder'], $Order['UserName']); $Ka91Pay = $this->oPay->createKa91Pay($Order, $Pay); if (intval($Ka91Pay)) { $result = array('return' => 1, 'OrderId' => $Ka91Pay, 'comment' => "充值成功"); $this->oExchange->createExchangeQueueByOrder(array('OrderId' => $Ka91Pay)); } else { $result = array('return' => 2, 'comment' => "充值失败"); } } } else { $result = array('return' => 0, 'comment' => "您所选择的支付方式不存在"); } } else { $result = array('return' => 0, 'comment' => "您所选择的游戏不存在"); } } else { $result = array('return' => 0, 'comment' => "您所选择的游戏-平台不存在"); } } else { $result = array('return' => 0, 'comment' => "您所选择的服务器配置不完整"); } } else { $result = array('return' => 0, 'comment' => "您所选择的服务器不存在"); } } else { $result = array('return' => 2, 'comment' => "用户不存在"); } } else { $result = array('return' => 0, 'comment' => "时间有误"); } } else { $result = array('return' => 2, 'comment' => "请输入接收方用户账号"); } } else { $result = array('return' => 0, 'comment' => "请输入服务器"); } } else { $result = array('return' => 0, 'comment' => "验证失败,请检查URL"); } } else { $result = array('return' => 0, 'comment' => "您的IP不在可允许的列表之内"); } echo json_encode($result); }
public function createPayAction() { //基础元素,必须参与验证 $Pay['OrderId'] = $this->request->OrderId; $Pay['PassageId'] = abs(intval($this->request->PassageId)); $Pay['SubPassageId'] = $this->request->SubPassageId ? $this->request->SubPassageId : ""; $Pay['PayTime'] = abs(intval($this->request->PayTime)) ? abs(intval($this->request->PayTime)) : time(); $Pay['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; $Pay['PayIP'] = $this->request->PayIP ? $this->request->PayIP : "127.0.0.1"; //URL验证码 $sign = $this->request->sign; //私钥,以后要移开到数据库存储 $p_sign = 'lm'; $sign_to_check = Base_common::check_sign($Pay, $p_sign); //不参与验证的元素 $Pay['PayIP'] = Base_Common::ip2long($Pay['PayIP']); //验证URL是否来自可信的发信方 if ($sign_to_check == $sign) { //检查订单号 if ($Pay['OrderId']) { if (abs($Pay['PayTime'] - time()) <= 600) { //查询订单 $OrderInfo = $this->oOrder->getRow($Pay['OrderId']); //如果订单未作废 if ($OrderInfo['OrderId']) { if ($OrderInfo['OrderStatus'] == 0) { //如果指定支付方 if ($OrderInfo['PayUserId']) { //查询用户 $PayUserInfo = $this->oUser->GetUserById($OrderInfo['PayUserId']); } //如果不指定支付方或者支付方确定存在 if ($PayUserInfo['UserId'] || $Order['PayUserId'] == 0) { //检查收款方用户 $AcceptUserInfo = $this->oUser->GetUserById($OrderInfo['AcceptUserId']); if ($AcceptUserInfo['UserId']) { if ($Pay['PassageId'] != $OrderInfo['PassageId']) { $PassageInfo = $this->oPassage->getRow($Pay['PassageId']); } else { $PassageInfo = $this->oPassage->getRow($OrderInfo['PassageId']); } //获取支付方式信息 if ($PassageInfo['passage_id']) { //检查服务器配置 $ServerInfo = $this->oServer->getRow($OrderInfo['ServerId']); if ($ServerInfo['ServerId']) { if ($ServerInfo['PartnerId'] && $ServerInfo['AppId']) { $bind = array($ServerInfo['PartnerId'], $ServerInfo['AppId']); //验证游戏-运营商信息 $PartnerAppInfo = $this->oPartnerApp->getRow($bind); if ($PartnerAppInfo['AppId'] && $PartnerAppInfo['PartnerId']) { //验证游戏信息 $AppInfo = $this->oApp->getRow($ServerInfo['AppId']); if ($AppInfo['AppId']) { //检测运营商信息 $PartnerInfo = $this->oPartner->getRow($ServerInfo['PartnerId']); if ($PartnerInfo['PartnerId']) { //如果关联支付订单存在 if ($OrderInfo['PayId']) { $result = array('return' => 0, 'comment' => "该订单已经支付完毕"); } else { $OrderUpdateArr = array('PayIp' => $Pay['PayIP'], 'PassageId' => $Pay['PassageId'], 'PayTime' => $Pay['PayTime']); $OrderUpdate = $this->oOrder->updateOrder($Pay['OrderId'], $OrderInfo['AcceptUserId'], $OrderUpdateArr); $PassageClassName = "Lm_Pay_Passage_" . $PassageInfo['passage']; $oPayPassage = new $PassageClassName(); $PayUrl = $oPayPassage->createPay($AppInfo, $PartnerInfo, $ServerInfo, $PassageInfo, $OrderInfo, $Pay); $result = array('return' => 1, 'PayUrl' => $PayUrl, 'StageUrl' => $PassageInfo['StageUrl'], 'comment' => "该订单可以继续支付"); } } else { $result = array('return' => 0, 'comment' => "所选择的游戏不存在"); } } else { $result = array('return' => 0, 'comment' => "所选择的游戏不存在"); } } else { $result = array('return' => 0, 'comment' => "所选择的游戏-运营商不存在"); } } else { $result = array('return' => 0, 'comment' => "所选择的服务器配置不完整"); } } else { $result = array('return' => 0, 'comment' => "所选择的服务器不存在"); } } else { $result = array('return' => 0, 'comment' => "支付方式不存在"); } } else { $result = array('return' => 0, 'comment' => "收款方用户不存在"); } } else { $result = array('return' => 0, 'comment' => "支付方用户不存在"); } } else { if ($OrderInfo['OrderStatus'] == -1) { $result = array('return' => 0, 'comment' => "该订单已经作废"); } elseif ($OrderInfo['OrderStatus'] > 1) { $result = array('return' => 0, 'comment' => "该订单已经支付完毕"); } } } else { $result = array('return' => 0, 'comment' => "该订单不存在"); } } else { $result = array('return' => 0, 'comment' => "时间错误"); } } else { $result = array('return' => 0, 'comment' => "请输入订单号"); } } else { $result = array('return' => 0, 'comment' => "验证失败,请检查URL"); } $Pay['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; if ($Pay['ReturnType'] == 1) { echo json_encode($result); } else { $r = $result['return'] . "|" . iconv('UTF-8', 'GBK', $result['comment']); if ($result['return'] == 1) { $r = $r . "|" . $result['LoginId'] . "|" . $result['adult']; } } }
public function checkIpAction() { $type = trim($this->request->type); //LocalIP 或者 WebIP $ip = Base_Common::ip2long($this->request->ip); $MachineId = $this->request->MachineId ? abs($this->request->MachineId) : 0; if (!empty($ip)) { if ($MachineId) { //有MachineId 表示是修改页面的 $array = array($type => $ip); $checkIPList = $this->oMachine->getByParam($array, "MachineId," . $type); if (count($checkIPList) == 0 || count($checkIPList) == 1 && $checkIPList[0]["MachineId"] == $MachineId) { echo "yes"; } else { echo "no"; } } else { $return = $this->oMachine->getRowByKey($type, $ip); if ($return) { echo "no"; } else { echo "yes"; } } } }
/** * 修改数据 * @return unknown_type */ public function updateAction() { /** * 记录日志 */ $log = "区服修改入库\n\nServerIp:\n" . $this->request->getServer('SERVER_ADDR') . "\n\nGET:\n" . var_export($_GET, true) . "\n\nPOST:\n" . var_export($_POST, true); $this->oLogManager->push('log', $log); //检查权限 $this->manager->checkMenuPermission($this->sign, Widget_Manager::MENU_PURVIEW_UPDATE); $bind = $this->request->from('ServerId', 'name', 'AppId', 'PartnerId', 'LoginStart', 'NextStart', 'NextEnd', 'PayStart', 'PayEnd', 'ServerIp', 'SocketPort', 'ServerSocketPort', 'IpListWhite', 'IpListBlack', 'is_show', 'GMIp', 'GMSocketPort'); $bind['LoginStart'] = strtotime($this->request->LoginStart); $bind['NextEnd'] = strtotime($this->request->NextEnd); $bind['NextStart'] = strtotime($this->request->NextStart); $bind['PayEnd'] = strtotime($this->request->PayEnd); $bind['PayStart'] = strtotime($this->request->PayStart); $bind['ServerIp'] = Base_Common::ip2long($bind['ServerIp']); $bind['GMIp'] = Base_Common::ip2long($bind['GMIp']); if (!empty($bind['IpListWhite'])) { $t = explode(',', $bind['IpListWhite']); foreach ($t as $key => $value) { $Comment['IpListWhite'][Base_Common::ip2long(trim($value))] = 1; } ksort($Comment['IpListWhite']); } if (!empty($bind['IpListBlack'])) { $t = explode(',', $bind['IpListBlack']); foreach ($t as $key => $value) { $Comment['IpListBlack'][Base_Common::ip2long(trim($value))] = 1; } ksort($Comment['IpListBlack']); } $bind['Comment'] = json_encode($Comment); unset($bind['IpListWhite'], $bind['IpListBlack']); //名称 if (empty($bind['name'])) { echo json_encode(array('errno' => 2)); return false; } //停服时间 if (!empty($bind['NextStart']) && !empty($bind['NextEnd'])) { if ($bind['NextStart'] <= $bind['NextEnd']) { echo json_encode(array('errno' => 3)); return false; } } //支付时间 if (!empty($bind['PayStart']) && !empty($bind['PayEnd'])) { if ($bind['PayStart'] <= $bind['PayEnd']) { echo json_encode(array('errno' => 4)); return false; } } $res = $this->oServer->update($this->request->old_ServerId, $bind); if ($res) { $response = array('errno' => 0, 'app' => $bind['AppId'], 'partner' => $bind['PartnerId']); $this->oServer->reBuildServerConfig(); } else { $response = array('errno' => 9); } echo json_encode($response); return true; }
/** *更新密码 */ public function updateUserPasswordAction() { //基础元素,必须参与验证 $User['UserId'] = abs(intval($this->request->UserId)); $User['UserPassWordOld'] = $this->request->UserPassWordOld; $User['UserPassWord'] = $this->request->UserPassWord; $User['UserPassWordR'] = $this->request->UserPassWordR; $User['Time'] = abs(intval($this->request->Time)); $User['PartnerId'] = abs(intval($this->request->PartnerId)) ? abs(intval($this->request->PartnerId)) : 1; $User['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; $start_time = microtime(true); //URL验证码 $sign = $this->request->sign; //私钥,以后要移开到数据库存储 $p_sign = 'lm'; $sign_to_check = base_common::check_sign($User, $p_sign); //不参与验证的元素 $User['UserRegIP'] = Base_Common::ip2long($_SERVER["REMOTE_ADDR"]); //验证URL是否来自可信的发信方 if ($sign_to_check == $sign) { //验证用户名有效性 if ($User['UserId']) { //验证时间戳,时差超过600秒即认为非法 if (abs($User['Time'] - time()) <= 600) { //验证密码长度不小于6 if (strlen($User['UserPassWord']) >= 6) { //验证两次输入密码是否相同 if ($User['UserPassWordR'] == $User['UserPassWord']) { //验证原密码输入 if ($User['UserPassWordOld']) { //验证原密码是否与新密码相同 if ($User['PassWordOld'] != md5($User['UserPassWord'])) { //获取用户信息 $UserInfo = $this->oUser->GetUserById($User['UserId']); if ($UserInfo['UserId']) { if ($UserInfo['UserPassWord'] == $User['UserPassWordOld']) { $PartnerInfo = $this->oPartner->getRow($User['PartnerId']); if ($PartnerInfo['PartnerId']) { $update = $this->oUser->updateUser($User['UserId'], array('UserPassWord' => md5($User['UserPassWord']))); if (intval($update) == 1) { $result = array('return' => 1, 'comment' => "密码更新成功"); } else { $result = array('return' => 0, 'comment' => "更新失败"); } } else { $result = array('return' => 2, 'comment' => "用户所属平台数据不存在"); } } else { $result = array('return' => 0, 'comment' => "原密码输入错误"); } } else { $result = array('return' => 0, 'comment' => "用户不存在"); } } else { $result = array('return' => 0, 'comment' => "新密码不能与原密码相同"); } } else { $result = array('return' => 0, 'comment' => "请输入原密码"); } } else { $result = array('return' => 0, 'comment' => "两次输入的密码不相符"); } } else { $result = array('return' => 0, 'comment' => "密码长度过短"); } } else { $result = array('return' => 2, 'comment' => "时间有误"); } } else { $result = array('return' => 0, 'comment' => "请输入用户ID"); } } else { $result = array('return' => 2, 'comment' => "验证失败,请检查URL"); } $User['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; if ($User['ReturnType'] == 1) { echo json_encode($result); } else { $r = $result['return'] . "|" . iconv('UTF-8', 'GBK', $result['comment']); if ($result['return'] == 1) { $r = $r . "|" . $result['UserId']; } echo $r; } }
/** *用户名方式登录 */ public function loginByNameAction() { //基础元素,必须参与验证 $User['UserName'] = $this->request->UserName; $User['UserPassWord'] = $this->request->UserPassWord; $User['LoginTime'] = abs(intval($this->request->LoginTime)); $User['ServerId'] = abs(intval($this->request->ServerId)); $User['UserLoginIP'] = trim($this->request->UserLoginIP); $User['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; //URL验证码 $sign = $this->request->sign; //私钥,以后要移开到数据库存储 $p_sign = 'lm'; $sign_to_check = base_common::check_sign($User, $p_sign); $User['UserLoginIP'] = Base_Common::ip2long($User['UserLoginIP']); //不参与验证的元素 $start = microtime(true); //验证URL是否来自可信的发信方 if ($sign_to_check == $sign) { //验证用户名有效性 if ($User['UserName']) { if ($User['ServerId']) { //验证时间戳,时差超过600秒即认为非法 if (abs($User['LoginTime'] - time()) <= 600) { //查询用户 $UserInfo = $this->oUser->GetUserByName($User['UserName']); unset($User['UserName']); $User['UserId'] = $UserInfo['UserId']; $result = $this->oLogin->UserLogin($User, $UserInfo); } else { $result = array('return' => 0, 'comment' => "时间有误"); } } else { $result = array('return' => 2, 'comment' => "请选择服务器"); } } else { $result = array('return' => 2, 'comment' => "请输入用户名"); } } else { $result = array('return' => 0, 'comment' => "验证失败,请检查URL"); } $User['ReturnType'] = $this->request->ReturnType ? $this->request->ReturnType : 2; $end = microtime(true); if ($User['ReturnType'] == 1) { echo json_encode($result); } else { $r = $result['return'] . "|" . iconv('UTF-8', 'GBK', $result['comment']); if ($result['return'] == 1) { $r = $r . "|" . $result['LoginId'] . "|" . $result['UserId'] . "|" . $result['adult']; } echo $r; } }