-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathlike_question.php
More file actions
39 lines (30 loc) · 1.28 KB
/
like_question.php
File metadata and controls
39 lines (30 loc) · 1.28 KB
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
<?php
require_once __DIR__ . "/db_connect.php";
$question_id = $_POST['question_id'] ?? 0;
$user_id = $_POST['user_id'] ?? 0;
if (!$question_id || !$user_id) {
echo json_encode(["status" => "error", "message" => "필수 값 없음"]);
exit;
}
// 이미 좋아요 눌렀는지 확인
$check = $conn->prepare("SELECT * FROM question_likes WHERE user_id = ? AND question_id = ?");
$check->bind_param("ii", $user_id, $question_id);
$check->execute();
$result = $check->get_result();
if ($result->num_rows > 0) {
// 좋아요 취소
$del = $conn->prepare("DELETE FROM question_likes WHERE user_id = ? AND question_id = ?");
$del->bind_param("ii", $user_id, $question_id);
$del->execute();
$conn->query("UPDATE questions SET like_count = like_count - 1 WHERE question_id = $question_id");
echo json_encode(["status" => "unliked", "message" => "좋아요 취소"]);
} else {
// 좋아요 추가
$ins = $conn->prepare("INSERT INTO question_likes (user_id, question_id) VALUES (?, ?)");
$ins->bind_param("ii", $user_id, $question_id);
$ins->execute();
$conn->query("UPDATE questions SET like_count = like_count + 1 WHERE question_id = $question_id");
echo json_encode(["status" => "liked", "message" => "좋아요 성공"]);
}
$conn->close();
?>