Files
2026-07-23 16:15:57 +09:00

170 lines
5.4 KiB
PHP

<?php
// DB 연결 예시
// $conn = new mysqli('localhost', 'egbim', 'baron3840!!', 'egbim');
// if ($conn->connect_error) {
// http_response_code(500);
// echo json_encode(['message' => 'DB 연결 실패']);
// exit;
// }
// mysqli_set_charset($conn, 'utf8mb4');
// // 파라미터 받기
// $product_code = $_POST['product_code'] ?? '';
// $family_version = $_POST['family_version'] ?? '';
// $external_version = $_POST['external_version'] ?? '';
// // 필수 값 체크
// if (!$product_code || !$family_version || !$external_version) {
// http_response_code(400);
// echo json_encode(['message' => '필수값 누락']);
// exit;
// }
// // INSERT or UPDATE (upsert)
// $sql = "INSERT INTO deploy_versions (product_code, family_version, external_version)
// VALUES (?, ?, ?)
// ON DUPLICATE KEY UPDATE
// family_version = VALUES(family_version),
// external_version = VALUES(external_version)";
// $stmt = $conn->prepare($sql);
// $stmt->bind_param("sss", $product_code, $family_version, $external_version);
// if ($stmt->execute()) {
// echo json_encode(['message' => '저장 성공']);
// } else {
// http_response_code(500);
// echo json_encode(['message' => 'DB 오류: ' . $stmt->error]);
// }
// $stmt->close();
// $conn->close();
?>
<?php
// ini_set('display_errors', 1);
// ini_set('display_startup_errors', 1);
// error_reporting(E_ALL);
// header('Content-Type: application/json');
// // DB 접속 정보 맞게 변경!
// $conn = new mysqli('localhost', 'egbim', 'baron3840!!', 'egbim');
// if ($conn->connect_error) {
// http_response_code(500);
// echo json_encode(['message' => 'DB 연결 실패: ' . $conn->connect_error]);
// exit;
// }
// mysqli_set_charset($conn, 'utf8mb4');
// //디버깅
// $db_name = $conn->query("SELECT DATABASE()")->fetch_row()[0];
// $res = $conn->query("SELECT code FROM products");
// $rows = [];
// while ($row = $res->fetch_assoc()) $rows[] = $row['code'];
// echo json_encode([
// 'db' => $db_name,
// 'all_codes' => $rows,
// 'product_code' => $_POST['product_code'] ?? ''
// ]);
// exit;
// //디버깅
// $product_code = $_POST['product_code'] ?? '';
// $family_version = $_POST['family_version'] ?? '';
// $external_version = $_POST['external_version'] ?? '';
// if (!$product_code || !$family_version || !$external_version) {
// http_response_code(400);
// echo json_encode(['message' => '필수값 누락']);
// exit;
// }
// // FK 에러 방지: products 테이블에 존재하는지 확인
// $chk = $conn->prepare("SELECT COUNT(*) FROM products WHERE code=?");
// $chk->bind_param("s", $product_code);
// $chk->execute();
// $chk->bind_result($cnt);
// $chk->fetch();
// $chk->close();
// if ($cnt < 1) {
// http_response_code(400);
// echo json_encode(['message' => '존재하지 않는 제품코드입니다']);
// exit;
// }
// $sql = "INSERT INTO deploy_versions (product_code, family_version, external_version)
// VALUES (?, ?, ?)
// ON DUPLICATE KEY UPDATE
// family_version=VALUES(family_version),
// external_version=VALUES(external_version)";
// $stmt = $conn->prepare($sql);
// if (!$stmt) {
// http_response_code(500);
// echo json_encode(['message' => '쿼리 준비 오류: ' . $conn->error]);
// exit;
// }
// $stmt->bind_param("sss", $product_code, $family_version, $external_version);
// if ($stmt->execute()) {
// echo json_encode(['message' => '저장 성공']);
// } else {
// http_response_code(500);
// echo json_encode(['message' => 'DB 오류: ' . $stmt->error]);
// }
// $stmt->close();
// $conn->close();
?>
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
header('Content-Type: application/json');
// ⭐️ 여기에 추가!
$product_code = $_POST['product_code'] ?? '';
$family_version = $_POST['family_version'] ?? '';
$external_version = $_POST['external_version'] ?? '';
$conn = new mysqli('localhost', 'egbim', 'baron3840!!', 'egbim');
if ($conn->connect_error) {
http_response_code(500);
echo json_encode(['message' => 'DB 연결 실패: ' . $conn->connect_error]);
exit;
}
mysqli_set_charset($conn, 'utf8mb4');
// FK 에러 방지: products 테이블에 존재하는지 확인
$chk = $conn->prepare("SELECT COUNT(*) FROM products WHERE code=?");
$chk->bind_param("s", $product_code);
$chk->execute();
$chk->bind_result($cnt);
$chk->fetch();
$chk->close();
if ($cnt < 1) {
http_response_code(400);
echo json_encode(['message' => '존재하지 않는 제품코드입니다']);
exit;
}
// 실제 insert/update 쿼리 실행
$sql = "INSERT INTO deploy_versions (product_code, family_version, external_version)
VALUES (?, ?, ?)
ON DUPLICATE KEY UPDATE
family_version=VALUES(family_version),
external_version=VALUES(external_version)";
$stmt = $conn->prepare($sql);
if (!$stmt) {
http_response_code(500);
echo json_encode(['message' => '쿼리 준비 오류: ' . $conn->error]);
exit;
}
$stmt->bind_param("sss", $product_code, $family_version, $external_version);
if ($stmt->execute()) {
echo json_encode(['message' => '저장 완료']);
} else {
http_response_code(500);
echo json_encode(['message' => 'DB 오류: ' . $stmt->error]);
}
$stmt->close();
$conn->close();
?>