Files
sam-kd/KDunitprice/fetch_modal.php
hskwon aca1767eb9 초기 커밋: 5130 레거시 시스템
- URL 하드코딩 → .env APP_URL 기반 동적 URL로 변경
- DB 연결 하드코딩 → .env 기반으로 변경
- MySQL strict mode DATE 오류 수정
2025-12-10 20:14:31 +09:00

148 lines
6.2 KiB
PHP

<?php
require_once($_SERVER['DOCUMENT_ROOT'] . "/session.php");
$num = $_POST['num'] ?? '';
$mode = $_POST['mode'] ?? '';
$tablename = 'KDunitprice';
require_once($_SERVER['DOCUMENT_ROOT'] . "/lib/mydb.php");
$pdo = db_connect();
$row = [
"prodcode" => "",
"item_name" => "",
"item_div" => "",
"spec" => "",
"unit" => "",
"unitprice" => "",
"searchtag" => "",
"update_log" => ""
];
if ($mode === 'update' && $num !== '') {
try {
$sql = "SELECT * FROM {$DB}.{$tablename} WHERE num = ?";
$stmh = $pdo->prepare($sql);
$stmh->bindValue(1, $num, PDO::PARAM_INT);
$stmh->execute();
$row = $stmh->fetch(PDO::FETCH_ASSOC);
if (is_numeric($row['unitprice'])) {
$row['unitprice'] = number_format($row['unitprice']);
}
} catch (PDOException $e) {
echo "DB 오류: " . $e->getMessage();
exit;
}
} else if ($mode === 'copy' && $num !== '') {
try {
$sql = "SELECT * FROM {$DB}.{$tablename} WHERE num = ?";
$stmh = $pdo->prepare($sql);
$stmh->bindValue(1, $num, PDO::PARAM_INT);
$stmh->execute();
$row = $stmh->fetch(PDO::FETCH_ASSOC);
if (is_numeric($row['unitprice'])) {
$row['unitprice'] = number_format($row['unitprice']);
}
$num = '';
$row['update_log'] = '';
} catch (PDOException $e) {
echo "DB 오류: " . $e->getMessage();
exit;
}
}
// item_div 목록 로딩
$itemDivList = [];
$unitList = [];
try {
$sql = "SELECT DISTINCT item_div FROM {$DB}.{$tablename} WHERE item_div IS NOT NULL AND item_div != ''";
$stmt = $pdo->query($sql);
$itemDivList = $stmt->fetchAll(PDO::FETCH_COLUMN);
$sql2 = "SELECT DISTINCT unit FROM {$DB}.{$tablename} WHERE unit IS NOT NULL AND unit != ''";
$stmt2 = $pdo->query($sql2);
$unitList = $stmt2->fetchAll(PDO::FETCH_COLUMN);
} catch (PDOException $e) {
echo "오류: " . $e->getMessage();
}
$title = '단가 신규 등록';
if ($mode === 'update') {
$title = '단가 수정';
} else if ($mode === 'copy') {
$title = '단가 복사';
}
?>
<div class="container-fluid">
<div class="d-flex align-items-center justify-content-center">
<div class="card">
<div class="card-header text-center">
<span class="fs-5 fw-bold"><?=$title?></span>
</div>
<div class="card-body">
<input type="hidden" id="mode" name="mode" value="<?=$mode?>">
<input type="hidden" id="num" name="num" value="<?=$num?>">
<input type="hidden" class="form-control" name="searchtag" id="searchtag" value="<?=htmlspecialchars($row['searchtag'])?>">
<input type="hidden" class="form-control" name="update_log" id="update_log" value="<?=htmlspecialchars($row['update_log'])?>">
<table class="table table-bordered">
<tbody>
<tr>
<td class="text-center fw-bold">품목코드</td>
<td colspan="3">
<input type="text" class="form-control" name="prodcode" id="prodcode" value="<?=htmlspecialchars($row['prodcode'])?>" autocomplete="off">
</td>
</tr>
<tr>
<td class="text-center fw-bold">품목명</td>
<td>
<input type="text" class="form-control" name="item_name" id="item_name" value="<?=htmlspecialchars($row['item_name'])?>" autocomplete="off">
</td>
<td class="text-center fw-bold">품목구분</td>
<td>
<select class="form-select" name="item_div" id="item_div">
<option value="">선택</option>
<?php foreach ($itemDivList as $div): ?>
<option value="<?=$div?>" <?=($row['item_div'] == $div) ? 'selected' : ''?>><?=$div?></option>
<?php endforeach; ?>
</select>
</td>
</tr>
<tr>
<td class="text-center fw-bold">규격</td>
<td>
<input type="text" class="form-control" name="spec" id="spec" value="<?=htmlspecialchars($row['spec'])?>" autocomplete="off">
</td>
<td class="text-center fw-bold">단위</td>
<td>
<select class="form-select" name="unit" id="unit">
<option value="">선택</option>
<?php foreach ($unitList as $unit): ?>
<option
value="<?= htmlspecialchars($unit) ?>"
<?= (strcasecmp($row['unit'], $unit) === 0) ? 'selected' : '' ?>
>
<?= htmlspecialchars($unit) ?>
</option>
<?php endforeach; ?>
</select>
</td>
</tr>
<tr>
<td class="text-center fw-bold">단가</td>
<td>
<input type="text" class="form-control text-end" name="unitprice" id="unitprice" value="<?=htmlspecialchars($row['unitprice'])?>" onkeyup="inputNumberFormat(this)" autocomplete="off">
</td>
<td class="text-center fw-bold">검색태그</td>
<td>
<span class="text-muted">자동 생성됩니다</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>