trim($_POST['customer_name'] ?? ''), 'customer_phone' => trim($_POST['customer_phone'] ?? ''), 'customer_email' => trim($_POST['customer_email'] ?? ''), 'reservation_date' => trim($_POST['reservation_date'] ?? ''), 'reservation_time' => trim($_POST['reservation_time'] ?? ''), 'consultation_type' => trim($_POST['consultation_type'] ?? 'onsite'), 'request_memo' => trim($_POST['customer_request'] ?? ''), 'payment_amount' => (int)($_POST['payment_amount'] ?? 0), 'status' => 'payment_pending' ]; // ν•„μˆ˜ ν•­λͺ© μœ νš¨μ„± 검사 if (empty($reservation_data['customer_name']) || empty($reservation_data['customer_phone']) || empty($reservation_data['reservation_date']) || empty($reservation_data['reservation_time'])) { throw new Exception('ν•„μˆ˜ μ˜ˆμ•½ 정보가 λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€.'); } // μ˜ˆμ•½ κ°€λŠ₯ μ—¬λΆ€ μž¬ν™•μΈ (μ„œλ²„ μΈ‘ 검증) $sql_check = "SELECT COUNT(*) as cnt FROM consultant_schedule WHERE specific_date = '{$reservation_data['reservation_date']}' AND start_time = '{$reservation_data['reservation_time']}' AND is_available = 1"; $schedule = sql_fetch($sql_check); if (!$schedule || $schedule['cnt'] == 0) { throw new Exception('μ„ νƒν•˜μ‹  μ‹œκ°„μ€ μ˜ˆμ•½μ΄ λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€. λ‹€λ₯Έ μ‹œκ°„μ„ μ„ νƒν•΄μ£Όμ„Έμš”.'); } // μ˜ˆμ•½ 생성 $sql = "INSERT INTO consultant_reservations (customer_name, customer_phone, customer_email, reservation_date, reservation_time, consultation_type, request_memo, payment_amount, status, created_at, updated_at) VALUES ( '" . sql_real_escape_string($reservation_data['customer_name']) . "', '" . sql_real_escape_string($reservation_data['customer_phone']) . "', '" . sql_real_escape_string($reservation_data['customer_email']) . "', '" . sql_real_escape_string($reservation_data['reservation_date']) . "', '" . sql_real_escape_string($reservation_data['reservation_time']) . "', '" . sql_real_escape_string($reservation_data['consultation_type']) . "', '" . sql_real_escape_string($reservation_data['request_memo']) . "', '{$reservation_data['payment_amount']}', '{$reservation_data['status']}', NOW(), NOW() )"; if (sql_query($sql)) { $reservation_id = sql_insert_id(); consultant_log("μƒˆ μ˜ˆμ•½ μ‹ μ²­: ID {$reservation_id} (고객: {$reservation_data['customer_name']})"); // TODO: 고객 및 κ΄€λ¦¬μžμ—κ²Œ μ•Œλ¦Ό λ°œμ†‘ 둜직 μΆ”κ°€ echo json_encode(['success' => true, 'message' => 'μ˜ˆμ•½ 신청이 μ™„λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.']); } else { throw new Exception('λ°μ΄ν„°λ² μ΄μŠ€ μ €μž₯ 쀑 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.'); } } catch (Exception $e) { consultant_log("μ˜ˆμ•½ μ‹ μ²­ 였λ₯˜: " . $e->getMessage(), 'error'); echo json_encode(['success' => false, 'message' => $e->getMessage()]); } ?>