hxp
2025-06-04 f4a514d5ac952110da846636ecbb9de951eaf3d2
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<?php
include_once "/Common/Logging.php";
include_once "/language/lang.php";
include_once "/Common/CommFunc.php";
include_once "../cfg/GMT_QueryBillboard.php";
 
header("Content-type: text/html; charset=utf-8");
 
\Logging\CreateLogging("GMT_QueryBillboard.php");
 
\CommFunc\SessionStart();
 
$billboardCh = GetbillboardCh();
 
$resultInfo = $_POST;
$ResultMsg = $resultInfo["ResultMsg"];
 
$billboardKeyCh = array(
    'Index' => \Lang\gettext('Index'),
    'Rank' => \Lang\gettext('排名'),
    'ID' => \Lang\gettext('ID'),
    'ID2' => \Lang\gettext('ID2'),
    'Name1' => \Lang\gettext('玩家'),
    'Name2' => \Lang\gettext('账号'),
    'Type2' => \Lang\gettext('职业'),
    'CmpValue' => \Lang\gettext('比较值1'),
    'CmpValue2' => \Lang\gettext('比较值2'),
    'CmpValue3' => \Lang\gettext('更新时间'),
    'Value1' => \Lang\gettext('其他值1'),
    'Value2' => \Lang\gettext('其他值2'),
    'Value3' => \Lang\gettext('其他值3'),
    'Value4' => \Lang\gettext('其他值4'),
    'Value5' => \Lang\gettext('其他值5'),
    'Value6' => \Lang\gettext('其他值6'),
    'Value7' => \Lang\gettext('其他值7'),
    'Value8' => \Lang\gettext('其他值8'),
);
 
$bbName = "";
$bbType = null;
$resultList = null;
$dataTotal = null;
if ($ResultMsg) {
    $bbType = $ResultMsg["BillBoardType"];
    $resultList = $ResultMsg["BillBoardInfo"];
    $dataTotal = $ResultMsg["dataTotal"];
    $billboardKeyChPri = array_key_exists($bbType, $billboardCh) ? $billboardCh[$bbType] : array();
    $bbName = $billboardKeyChPri['BBName'];
}
$retCount = count($resultList);
 
$cmpValue3CalcTime = 3471264000; //2080-01-01 00:00:00 的时间戳,用于存比较值3更新时间的计算值
$jobNameInfo = array("1" => \Lang\gettext("枪豪"), "2" => \Lang\gettext("道师"), "3" => \Lang\gettext("剑修"));
?>
 
<br />
<hr />
<a href="/GMToolClient/queryBillboard.php"><?php echo \Lang\gettext("查询实时排行榜"); ?></a> | 
<a href="/serverinfo/billboardhis.php"><?php echo \Lang\gettext("查询历史排行榜"); ?></a>
<br /><br />
<?php
if ($bbName) {
    echo "【" . $bbName . "】<br/>";
}
echo \Lang\gettext("榜单类型") . ": " . $bbType . "<br/>";
echo \Lang\gettext("返回条数") . ": " . $retCount . " / ". $dataTotal ."<br/>";
echo "<table id=\"tf\" class=\"border-table\">";
echo "<tr>";
foreach ($billboardKeyCh as $key => $value) {
    // 没有指定要显示的key
    if (($key == "CmpValue2" or \CommFunc\startsWith($key, "Value")) and !array_key_exists($key, $billboardKeyChPri)) {
        continue;
    }
    $keyCh = $value;
    if (array_key_exists($key, $billboardKeyChPri)) {
        // 指定榜单字段名
        $keyCh = $billboardKeyChPri[$key];
    }
    echo "<td align='center'>" . $keyCh . "</td>";
}
echo "</tr>";
 
for ($i = 0; $i < $retCount; $i++) {
    $dataInfo = $resultList[$i];
    echo "<tr>";
    echo "<td align='center'>" . ($dataInfo["Index"]?$dataInfo["Index"]:0) . "</td>";
 
    foreach ($billboardKeyCh as $key => $value) {
        if ($key == "Index") {
            continue;
        }
        // 没有指定要显示的key
        if (($key == "CmpValue2" or \CommFunc\startsWith($key, "Value")) and !array_key_exists($key, $billboardKeyChPri)) {
            continue;
        }
        $widgetName = "lab" . $key . $i;
        $tdContent = $dataInfo[$key];
        if ($key == "CmpValue3" and !array_key_exists($key, $billboardKeyChPri)) {
            $updTime = $cmpValue3CalcTime  - $tdContent;
            $tdContent = date("Y-m-d H:i:s", $updTime); // 更新数据时间
        }
        if ($key == "Type2") {
            if (array_key_exists("" . $tdContent, $jobNameInfo)) {
                $tdContent = $jobNameInfo["" . $tdContent];
            }
        }
        $tdContent = '<label name="' . $widgetName . '" id="' . $widgetName . '"/>' . $tdContent . '</label>';
        if ($key == "Name1" || $key == "Name2") {
            $align = "left";
        } else {
            $align = "center";
        }
        echo "<td align='" . $align . "'>" . $tdContent . "</td>";
    }
    echo "</tr>";
}
echo "</table>";
?>
 
<hr />
<style type="text/css">
    .border-table {
        border-collapse: collapse;
        border: none;
    }
 
    .border-table td {
        border: solid #000 1px;
    }
</style>