1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
include_once '/Common/CommFunc.php';
include_once "/ProjComm/CfgReader.php";
include_once "/db/DBOper.php";
include_once '/Common/Logging.php';
 
// https://open.x7sy.com/sdk_resources/documentDetails?document_id=8
// 一、【SDK 登录】与【获取用户信息】流程
 
header("Content-type: text/html; charset=utf-8");
 
\Logging\CreateLogging("center.x7.checklogin.php");
\Logging\LogInfo("_GET:" . print_r($_GET, true));
 
$tokenkey = $_GET["tokenkey"];
$channel = $_GET["channel"];
if (!$tokenkey || !$channel) {
    exit;
}
 
if (!\CfgReader\ReadConfig() || !\CfgReader\GetConfigData("x7", "Appkey_" . $channel, $appkey)) {
    exit;
}
$sign = md5($appkey . $tokenkey);;
 
// https://api.x7sy.com/user/check_v4_login?tokenkey=de28191a4c808d36787d97f1a3825be1&sign=e7f1d806155b64483611042a23167448
// 参数名        参数类型        参数解释
// tokenkey        string(32)    由【小7SDK】传递给【游戏客户端】。
// sign            string(32)    是appkey与tokenkey的md5值,appkey在前,tokenkey在后,整个字符串是小写。
$url = "https://api.x7sy.com/user/check_v4_login";
$get = array("tokenkey" => $tokenkey, "sign" => $sign);
$retStr = \CommFunc\curl_get($url, $get);
\Logging\LogInfo("retStr:" . $retStr);
// 原样返回客服端
echo $retStr;
 
$ret = json_decode($retStr, true);
// 当成功时,记录
if (isset($ret) && $ret["errorno"] == 0 && $ret["data"]) {
    $data = $ret["data"];
    $guid = $data["guid"];
    $username = $data["username"];
    $is_real_user = $data["is_real_user"];
    $is_eighteen = $data["is_eighteen"];
    if (\DBOper\Update(
        "UserToken",
        array("Channel" => $channel, "UserGuid" => $guid),
        array(
            "Channel" => $channel,
            "UserGuid" => $guid,
            "UserName" => $username,
            "Tokenkey" => $tokenkey,
            "UpdTime" => time(),
            "RealUser" => $is_real_user,
            "Eighteen" => $is_eighteen,
        ),
        true,
        true
    )) {
        \Logging\LogInfo("Update db ok.");
    } else {
        \Logging\LogError("Update db error. get:" . print_r($get, true) . " retStr:" . $retStr);
    }
} else {
    \Logging\LogError("get:" . print_r($get, true) . " retStr:" . $retStr);
}
exit;