<?php
|
include_once '/Common/CommFunc.php';
|
include_once '/Common/Logging.php';
|
include_once "/ProjComm/CfgReader.php";
|
include_once "/language/lang.php";
|
include_once "/db/DBOper.php";
|
|
header("Content-type: text/html; charset=utf-8");
|
|
// https://www.eolink.com/share/inside/Yk3vUm/api/844628/detail/3309969
|
|
\Logging\CreateLogging("gmgame.clear_bag.php");
|
\Logging\LogInfo("_POST: " . print_r($_POST, true));
|
|
$role_id = $_POST["role_id"]; // 角色ID
|
$server_id = $_POST["server_id"]; // 游戏区服ID
|
$sign = $_POST["sign"]; // 签名校验 sign = md5(server_id+role_id+key);
|
|
$appid = "gmgame";
|
|
if (
|
!\CfgReader\ReadConfig()
|
|| !\CfgReader\GetConfigData("gmgame", "Md5_Key2", $Md5_Key)
|
) {
|
retFail("CfgError");
|
exit;
|
}
|
|
$md5SignLocal = md5($server_id . $role_id . $Md5_Key);
|
if ($md5SignLocal != $sign) {
|
retFail("ErrorSign", "md5SignLocal:" . $md5SignLocal . " != sign:" . $sign);
|
exit;
|
}
|
|
// 验证账号
|
$playerID = intval($role_id);
|
$find = array("Channel" => $appid, "PlayerID" => $playerID);
|
if (!\DBOper\FindOne("ServerRoles", $find, $roleInfo, array("AccountID" => 1, "ServerID" => 1, "_id" => 0), false)) {
|
retFail("fail");
|
exit;
|
};
|
\Logging\LogInfo("roleInfo: " . print_r($roleInfo, true));
|
if (!isset($roleInfo)) {
|
retFail("role_id_error");
|
exit;
|
}
|
$AccountID = $roleInfo["AccountID"];
|
$dbServerID = $roleInfo["ServerID"];
|
if (intval($server_id) != $dbServerID) {
|
retFail("server_id_error");
|
exit;
|
}
|
|
// 发送邮件
|
$accID = $AccountID . "@" . $appid . "@s" . $dbServerID;
|
// -------------- 测试数据 --------------
|
// $accID = "tq321@test@s86";
|
// $appid = "test";
|
// $server_id = "86";
|
// -------------- 测试数据 --------------
|
|
$packData = array(
|
"queryType" => "accID",
|
"playerFind" => $accID,
|
"clearBagList" => "[2, 32, 255]" // 暂时清理 物品背包2 + 神兽背包32 + 符印背包255
|
);
|
$retList = \CommFunc\SendGMTToGameServers(True, "GMT_ClearBag", $packData, $appid, array($server_id));
|
\Logging\LogInfo("retList:" . print_r($retList, true));
|
if (!is_array($retList)) {
|
retFail("clear_error");
|
exit;
|
}
|
$ret = json_decode($retList[$server_id], true);
|
if (!$ret || !array_key_exists("ResultType", $ret) || $ret["ResultType"] != 0) {
|
retFail("clear_fail");
|
exit;
|
}
|
ret(0, "OK");
|
exit;
|
|
function retFail($msg, $errMsg = "")
|
{
|
$code = -1;
|
\Logging\LogError("err_code:" . $code . " err_msg:" . $msg . " errMsg:" . $errMsg);
|
ret($code, $msg);
|
}
|
function ret($code, $msg)
|
{
|
$retData = array("err_code" => $code, "err_msg" => $msg);
|
echo \CommFunc\MyJson_encode($retData);
|
}
|