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

Contents of /fenglin/bbs/set_recommend.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.10 - (show annotations)
Sat Apr 5 15:18:36 2025 UTC (11 months, 1 week ago) by sysadm
Branch: MAIN
Changes since 1.9: +128 -41 lines
Refact as AJAX service

1 <?
2 require_once "../lib/db_open.inc.php";
3 require_once "./common_lib.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 $set = (isset($data["set"]) && $data["set"] == "1" ? 1 : 0);
10
11 $result_set = array(
12 "return" => array(
13 "code" => 0,
14 "message" => "",
15 "errorFields" => array(),
16 )
17 );
18
19 header("Content-Type:application/json; charset=utf-8");
20
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 // Begin transaction
31 $rs = mysqli_query($db_conn, "SET autocommit=0");
32 if ($rs == false)
33 {
34 $result_set["return"]["code"] = -2;
35 $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
36
37 mysqli_close($db_conn);
38 exit(json_encode($result_set));
39 }
40
41 $rs = mysqli_query($db_conn, "BEGIN");
42 if ($rs == false)
43 {
44 $result_set["return"]["code"] = -2;
45 $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
46
47 mysqli_close($db_conn);
48 exit(json_encode($result_set));
49 }
50
51 $sql = "SELECT UID, SID, recommend FROM bbs WHERE AID = $id AND TID = 0 AND visible";
52
53 $rs = mysqli_query($db_conn, $sql);
54 if ($rs == false)
55 {
56 $result_set["return"]["code"] = -2;
57 $result_set["return"]["message"] = "Query article error: " . mysqli_error($db_conn);
58
59 mysqli_close($db_conn);
60 exit(json_encode($result_set));
61 }
62
63 if($row = mysqli_fetch_array($rs))
64 {
65 $uid = $row["UID"];
66 $sid = $row["SID"];
67 $recommend = $row["recommend"];
68 }
69 else
70 {
71 $result_set["return"]["code"] = -1;
72 $result_set["return"]["message"] = "文章不存在";
73
74 mysqli_close($db_conn);
75 exit(json_encode($result_set));
76 }
77 mysqli_free_result($rs);
78
79 if (!($_SESSION["BBS_priv"]->checkpriv($sid, S_POST | S_MAN_M) &&
80 $_SESSION["BBS_priv"]->checklevel(P_ADMIN_M | P_ADMIN_S | P_MAN_C)))
81 {
82 $result_set["return"]["code"] = -1;
83 $result_set["return"]["message"] = "没有权限";
84
85 mysqli_close($db_conn);
86 exit(json_encode($result_set));
87 }
88
89 // Check if already set
90 if ($recommend == $set)
91 {
92 $result_set["return"]["code"] = 1;
93 $result_set["return"]["message"] = "已设置";
94
95 mysqli_close($db_conn);
96 exit(json_encode($result_set));
97 }
98
99 $sql = "UPDATE bbs SET recommend = $set WHERE AID = $id";
100
101 $rs = mysqli_query($db_conn, $sql);
102 if ($rs == false)
103 {
104 $result_set["return"]["code"] = -2;
105 $result_set["return"]["message"] = "Set recommend error: " . mysqli_error($db_conn);
106
107 mysqli_close($db_conn);
108 exit(json_encode($result_set));
109 }
110
111 //Add log
112 $rs = article_op_log($id, $_SESSION["BBS_uid"], ($set ? "R" : "N"), client_addr(), $db_conn);
113 if ($rs == false)
114 {
115 $result_set["return"]["code"] = -2;
116 $result_set["return"]["message"] = "Add log error: " . mysqli_error($db_conn);
117
118 mysqli_close($db_conn);
119 exit(json_encode($result_set));
120 }
121
122 // Commit transaction
123 $rs = mysqli_query($db_conn, "COMMIT");
124 if ($rs == false)
125 {
126 $result_set["return"]["code"] = -2;
127 $result_set["return"]["message"] = "Mysqli error: " . mysqli_error($db_conn);
128
129 mysqli_close($db_conn);
130 exit(json_encode($result_set));
131 }
132
133 mysqli_close($db_conn);
134 exit(json_encode($result_set));
135 ?>

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