/[LeafOK_CVS]/fenglin/bbs/set_life.php
ViewVC logotype

Annotation of /fenglin/bbs/set_life.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.15 - (hide annotations)
Wed Apr 23 10:33:34 2025 UTC (10 months, 3 weeks ago) by sysadm
Branch: MAIN
CVS Tags: HEAD
Changes since 1.14: +0 -0 lines
FILE REMOVED
Rename set_life.php to user_service_life.php

1 sysadm 1.14 <?php
2 sysadm 1.8 require_once "../lib/db_open.inc.php";
3 sysadm 1.1 require_once "./session_init.inc.php";
4    
5 sysadm 1.11 $data = json_decode(file_get_contents("php://input"), true);
6    
7     $uid = (isset($data["uid"]) ? intval($data["uid"]) : 0);
8     $life = (isset($data["life"]) ? intval($data["life"]) : 0);
9 sysadm 1.1
10 sysadm 1.11 $result_set = array(
11     "return" => array(
12     "code" => 0,
13     "message" => "",
14     "errorFields" => array(),
15     )
16     );
17    
18     header("Content-Type:application/json; charset=utf-8");
19    
20     // Validate input data
21     if (!isset($_SESSION["BBS_uid"]) || $_SESSION["BBS_uid"] == 0)
22     {
23     $result_set["return"]["code"] = -1;
24     $result_set["return"]["message"] = "没有登录";
25    
26     mysqli_close($db_conn);
27     exit(json_encode($result_set));
28     }
29    
30     if (!(in_array($life, $BBS_life_immortal) || $life == 150))
31     {
32     $result_set["return"]["code"] = -1;
33     $result_set["return"]["message"] = "非法生命值";
34    
35     mysqli_close($db_conn);
36     exit(json_encode($result_set));
37     }
38    
39 sysadm 1.12 if (!$_SESSION["BBS_priv"]->checklevel(P_ADMIN_M | P_ADMIN_S))
40 sysadm 1.11 {
41     $result_set["return"]["code"] = -1;
42     $result_set["return"]["message"] = "没有权限";
43    
44     mysqli_close($db_conn);
45     exit(json_encode($result_set));
46     }
47    
48     // Begin transaction
49     $rs = mysqli_query($db_conn, "SET autocommit=0");
50     if ($rs == false)
51     {
52     $result_set["return"]["code"] = -2;
53     $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
54    
55     mysqli_close($db_conn);
56     exit(json_encode($result_set));
57     }
58    
59     $rs = mysqli_query($db_conn, "BEGIN");
60     if ($rs == false)
61     {
62     $result_set["return"]["code"] = -2;
63     $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
64    
65     mysqli_close($db_conn);
66     exit(json_encode($result_set));
67     }
68    
69     $sql = "SELECT life FROM user_list
70     INNER JOIN user_pubinfo ON user_list.UID = user_pubinfo.UID
71 sysadm 1.13 WHERE user_list.UID = $uid AND user_list.enable
72     FOR UPDATE";
73 sysadm 1.11
74     $rs = mysqli_query($db_conn, $sql);
75     if ($rs == false)
76     {
77     $result_set["return"]["code"] = -2;
78     $result_set["return"]["message"] = "Query user error: " . mysqli_error($db_conn);
79    
80     mysqli_close($db_conn);
81     exit(json_encode($result_set));
82     }
83    
84     if($row = mysqli_fetch_array($rs))
85     {
86     if ($row["life"] == $life)
87     {
88     $result_set["return"]["code"] = -1;
89     $result_set["return"]["message"] = "没有改变";
90    
91     mysqli_close($db_conn);
92     exit(json_encode($result_set));
93     }
94     }
95     else
96     {
97     $result_set["return"]["code"] = -1;
98     $result_set["return"]["message"] = "用户不存在";
99    
100     mysqli_close($db_conn);
101     exit(json_encode($result_set));
102     }
103     mysqli_free_result($rs);
104    
105     $sql = "UPDATE user_pubinfo SET life = $life WHERE UID = $uid";
106    
107     $rs = mysqli_query($db_conn, $sql);
108     if ($rs == false)
109     {
110     $result_set["return"]["code"] = -2;
111     $result_set["return"]["message"] = "Update user life error: " . mysqli_error($db_conn);
112    
113     mysqli_close($db_conn);
114     exit(json_encode($result_set));
115     }
116    
117     $sql = "UPDATE user_online SET current_action = 'reload' WHERE UID = $uid";
118    
119     $rs = mysqli_query($db_conn, $sql);
120     if ($rs == false)
121     {
122     $result_set["return"]["code"] = -2;
123     $result_set["return"]["message"] = "Update user online error: " . mysqli_error($db_conn);
124    
125     mysqli_close($db_conn);
126     exit(json_encode($result_set));
127     }
128    
129     $sql = "INSERT INTO user_life_log(UID, set_UID, life, dt, ip)
130     VALUES($uid, " . $_SESSION["BBS_uid"] . ", $life, NOW(), '".
131     client_addr() . "')";
132    
133     $rs = mysqli_query($db_conn, $sql);
134     if ($rs == false)
135     {
136     $result_set["return"]["code"] = -2;
137     $result_set["return"]["message"] = "Add log error: " . mysqli_error($db_conn);
138    
139     mysqli_close($db_conn);
140     exit(json_encode($result_set));
141     }
142    
143     // Commit transaction
144     $rs = mysqli_query($db_conn, "COMMIT");
145     if ($rs == false)
146     {
147     $result_set["return"]["code"] = -2;
148     $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
149    
150     mysqli_close($db_conn);
151     exit(json_encode($result_set));
152     }
153 sysadm 1.1
154 sysadm 1.11 mysqli_close($db_conn);
155     exit(json_encode($result_set));
156 sysadm 1.1 ?>

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1