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

Contents of /fenglin/bbs/article_service_transship.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (show annotations)
Fri Oct 10 12:15:02 2025 UTC (5 months ago) by sysadm
Branch: MAIN
CVS Tags: HEAD
Changes since 1.3: +1 -1 lines
Remove legacy code

1 <?php
2 require_once "../lib/db_open.inc.php";
3 require_once "./article_op.inc.php";
4 require_once "./session_init.inc.php";
5
6 $data = json_decode(file_get_contents("php://input"), true);
7
8 $id = (isset($data["id"]) ? intval($data["id"]) : 0);
9
10 $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 if (!isset($_SESSION["BBS_uid"]) || $_SESSION["BBS_uid"] == 0)
21 {
22 $result_set["return"]["code"] = -1;
23 $result_set["return"]["message"] = "没有登录";
24
25 mysqli_close($db_conn);
26 exit(json_encode($result_set));
27 }
28
29 // Begin transaction
30 $rs = mysqli_query($db_conn, "SET autocommit=0");
31 if ($rs == false)
32 {
33 $result_set["return"]["code"] = -2;
34 $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
35
36 mysqli_close($db_conn);
37 exit(json_encode($result_set));
38 }
39
40 $rs = mysqli_query($db_conn, "BEGIN");
41 if ($rs == false)
42 {
43 $result_set["return"]["code"] = -2;
44 $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
45
46 mysqli_close($db_conn);
47 exit(json_encode($result_set));
48 }
49
50 $sql = "SELECT UID, SID, transship, excerption FROM bbs
51 WHERE AID = $id AND TID = 0 AND visible
52 FOR UPDATE";
53
54 $rs = mysqli_query($db_conn, $sql);
55 if ($rs == false)
56 {
57 $result_set["return"]["code"] = -2;
58 $result_set["return"]["message"] = "Query article error: " . mysqli_error($db_conn);
59
60 mysqli_close($db_conn);
61 exit(json_encode($result_set));
62 }
63
64 if($row = mysqli_fetch_array($rs))
65 {
66 $uid = $row["UID"];
67 $sid = $row["SID"];
68 $transship = $row["transship"];
69 $excerption = $row["excerption"];
70 }
71 else
72 {
73 $result_set["return"]["code"] = -1;
74 $result_set["return"]["message"] = "文章不存在";
75
76 mysqli_close($db_conn);
77 exit(json_encode($result_set));
78 }
79 mysqli_free_result($rs);
80
81 if (!($_SESSION["BBS_priv"]->checkpriv($sid, S_POST | S_MAN_S)) || $row["excerption"])
82 {
83 $result_set["return"]["code"] = -1;
84 $result_set["return"]["message"] = "没有权限";
85
86 mysqli_close($db_conn);
87 exit(json_encode($result_set));
88 }
89
90 // Check if already set
91 if ($transship == 1)
92 {
93 $result_set["return"]["code"] = 1;
94 $result_set["return"]["message"] = "已设置";
95
96 mysqli_close($db_conn);
97 exit(json_encode($result_set));
98 }
99
100 $sql = "UPDATE bbs SET transship = 1 WHERE AID = $id";
101
102 $rs = mysqli_query($db_conn, $sql);
103 if ($rs == false)
104 {
105 $result_set["return"]["code"] = -2;
106 $result_set["return"]["message"] = "Set transship error: " . mysqli_error($db_conn);
107
108 mysqli_close($db_conn);
109 exit(json_encode($result_set));
110 }
111
112 //Subtract exp
113 $rs = user_exp_change($uid, -30, $db_conn);
114 if ($rs == false)
115 {
116 $result_set["return"]["code"] = -2;
117 $result_set["return"]["message"] = "Subtract exp error: " . mysqli_error($db_conn);
118
119 mysqli_close($db_conn);
120 exit(json_encode($result_set));
121 }
122
123 //Send alarm message
124 $msg_content = "您所发表的[article $id]$id" .
125 "[/article]号文章,违反了本论坛的相关规定,现已被设为转载。" .
126 "[align right]执行人:[user " . $_SESSION["BBS_uid"] . "]" .
127 $_SESSION["BBS_username"] . "[/user][/align]";
128
129 $sql = "INSERT INTO bbs_msg(fromUID, toUID, content, send_dt, send_ip)
130 VALUES($BBS_sys_uid, $uid, '" .
131 mysqli_real_escape_string($db_conn, $msg_content) .
132 "', NOW(), '" . client_addr() . "')";
133
134 $rs = mysqli_query($db_conn, $sql);
135 if ($rs == false)
136 {
137 $result_set["return"]["code"] = -2;
138 $result_set["return"]["message"] = "Add message error: " . mysqli_error($db_conn);
139
140 mysqli_close($db_conn);
141 exit(json_encode($result_set));
142 }
143
144 //Add log
145 $rs = article_op_log($id, $_SESSION["BBS_uid"], "Z", client_addr(), $db_conn);
146 if ($rs == false)
147 {
148 $result_set["return"]["code"] = -2;
149 $result_set["return"]["message"] = "Add log error: " . mysqli_error($db_conn);
150
151 mysqli_close($db_conn);
152 exit(json_encode($result_set));
153 }
154
155 // Commit transaction
156 $rs = mysqli_query($db_conn, "COMMIT");
157 if ($rs == false)
158 {
159 $result_set["return"]["code"] = -2;
160 $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
161
162 mysqli_close($db_conn);
163 exit(json_encode($result_set));
164 }
165
166 mysqli_close($db_conn);
167 exit(json_encode($result_set));

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