145 lines
6.1 KiB
PHP
145 lines
6.1 KiB
PHP
<?php
|
|
// if (!defined('_GNUBOARD_')) define('_GNUBOARD_', true); // 상위 공통파일에서 정의되어 있다면 생략 가능
|
|
// 고객에게 보내는 SMS를 통해 고객이 직접 접속하므로 주석처리
|
|
|
|
include_once('./_common.php'); // 공통 환경 로드
|
|
|
|
$isDebug = false; // 디버그 여부, 필요시 true로 변경
|
|
|
|
$b5_code = $annual_items['빅5'];
|
|
$nor_code = $annual_items['일반'];
|
|
$annu_item_code = array_values($annual_items);
|
|
|
|
// 1. 요청된 od_id 받기 (GET 또는 POST)
|
|
$od_id = isset($_REQUEST['od_id']) ? trim($_REQUEST['od_id']) : '';
|
|
if (!$od_id) {
|
|
alert('주문번호가 없습니다.');
|
|
exit;
|
|
}
|
|
|
|
// 2. 주문정보 유효성 체크
|
|
$order = sql_fetch("SELECT od_id FROM {$g5['g5_shop_order_table']} WHERE od_id = '{$od_id}'");
|
|
if (!$order) {
|
|
alert('유효하지 않은 주문번호입니다.');
|
|
exit;
|
|
}
|
|
|
|
// 4. 주문 상품별 수량 조회 (연간회원권에 해당하는 상품만)
|
|
$sql = "SELECT it_id, ct_qty FROM {$g5['g5_shop_cart_table']} WHERE od_id = '{$od_id}' AND it_id IN ('".implode("','", $annu_item_code)."')";
|
|
$result = sql_query($sql);
|
|
|
|
if (sql_num_rows($result) == 0) {
|
|
alert('연간회원권 상품 주문 내역이 없습니다.');
|
|
exit;
|
|
}
|
|
|
|
// 5. 상품별 수량 데이터 배열로 저장
|
|
$items = [];
|
|
while ($row = sql_fetch_array($result)) {
|
|
$items[] = [
|
|
'it_id' => $row['it_id'],
|
|
'ct_qty' => (int)$row['ct_qty']
|
|
];
|
|
}
|
|
|
|
// 6. 상품별 카테고리 정의
|
|
function getAnnuCaID($it_id) {
|
|
global $annual_items;
|
|
|
|
foreach ($annual_items as $name => $code) {
|
|
if ($code == $it_id) {
|
|
return [
|
|
'ca_id' => ($name == '빅5') ? 5 : 3, // 필요시 다른 로직으로 분기
|
|
'ca_name' => $name
|
|
];
|
|
}
|
|
}
|
|
|
|
return ['ca_id' => 0, 'ca_name' => '기타'];
|
|
}
|
|
|
|
|
|
// 7. HTML 출력 시작
|
|
?>
|
|
<!DOCTYPE html>
|
|
<html lang="ko">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<title>연간회원 정보 입력</title>
|
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous">
|
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
|
|
<script src="https://t1.daumcdn.net/mapjsapi/bundle/postcode/prod/postcode.v2.js"></script>
|
|
<script>
|
|
function execDaumPostcode(targetId) {
|
|
new daum.Postcode({
|
|
oncomplete: function(data) {
|
|
var addr = data.userSelectedType === 'R' ? data.roadAddress : data.jibunAddress;
|
|
document.getElementById(targetId).value = addr;
|
|
}
|
|
}).open();
|
|
}
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<section class="container-sm my-5" style="max-width:800px;">
|
|
<h3>퍼스트가든 연간회원 정보입력</h3>
|
|
<form action="annual_member_insert.update.php" method="POST" enctype="multipart/form-data">
|
|
<input type="hidden" name="od_id" value="<?=htmlspecialchars($od_id)?>" readonly>
|
|
|
|
<?php
|
|
$idx = 0;
|
|
foreach ($items as $item) {
|
|
$ca = getAnnuCaID($item['it_id']);
|
|
$ca_name = $ca['ca_name'];
|
|
$ca_id = $ca['ca_id'];
|
|
for ($i = 0; $i < $item['ct_qty']; $i++, $idx++) {
|
|
?>
|
|
<div class="mb-4 p-3 border rounded">
|
|
<h5><?=$ca_name?> 회원 <?=$i+1?></h5>
|
|
<input type="hidden" name="it_id_<?=$idx?>" value="<?=htmlspecialchars($item['it_id'])?>">
|
|
<input type="hidden" name="ca_id_<?=$idx?>" value="<?=$ca_id?>">
|
|
|
|
<div class="mb-2">
|
|
<label for="name_<?=$idx?>" class="form-label">성명</label>
|
|
<input type="text" id="name_<?=$idx?>" name="name_<?=$idx?>" class="form-control" required>
|
|
</div>
|
|
<div class="mb-2">
|
|
<label class="form-label">성별</label><br>
|
|
<input type="radio" id="gender_male_<?=$idx?>" name="gender_<?=$idx?>" value="남" checked required>
|
|
<label for="gender_male_<?=$idx?>">남</label>
|
|
<input type="radio" id="gender_female_<?=$idx?>" name="gender_<?=$idx?>" value="여" required>
|
|
<label for="gender_female_<?=$idx?>">여</label>
|
|
</div>
|
|
<div class="mb-2">
|
|
<label for="tel_<?=$idx?>" class="form-label">연락처</label>
|
|
<input type="text" id="tel_<?=$idx?>" name="tel_<?=$idx?>" class="form-control" maxlength="11" required>
|
|
</div>
|
|
<div class="mb-2">
|
|
<label for="birth_<?=$idx?>" class="form-label">생년월일</label>
|
|
<input type="date" id="birth_<?=$idx?>" name="birth_<?=$idx?>" class="form-control" max="9999-12-31" required>
|
|
</div>
|
|
<div class="mb-2">
|
|
<label for="email_<?=$idx?>" class="form-label">이메일</label>
|
|
<input type="email" id="email_<?=$idx?>" name="email_<?=$idx?>" class="form-control">
|
|
</div>
|
|
<div class="mb-2">
|
|
<label for="addr_<?=$idx?>" class="form-label">주소</label>
|
|
<input type="text" id="addr_<?=$idx?>" name="addr_<?=$idx?>" class="form-control">
|
|
<button type="button" class="btn btn-primary mt-1" onclick="execDaumPostcode('addr_<?=$idx?>')">주소검색</button>
|
|
</div>
|
|
<div class="mb-2">
|
|
<label for="photofile_<?=$idx?>" class="form-label">사진첨부</label>
|
|
<input type="file" id="photofile_<?=$idx?>" name="photofile_<?=$idx?>" class="form-control" required>
|
|
</div>
|
|
</div>
|
|
<?php
|
|
}
|
|
}
|
|
?>
|
|
|
|
<button type="submit" class="btn btn-primary">등록 완료</button>
|
|
</form>
|
|
</section>
|
|
</body>
|
|
</html>
|