Files
2026-06-11 18:47:38 +09:00

100 lines
4.4 KiB
PHP

<?php
$sub_menu = "800300";
include_once('./_common.php');
auth_check($auth[$sub_menu], 'r');
$g5['title'] = '시스템 설정';
// 설정값 로드
$configs = [];
$result = sql_query("SELECT * FROM order_config ORDER BY id ASC");
while ($row = sql_fetch_array($result)) {
$configs[$row['config_key']] = $row;
}
// POST 요청 처리
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
auth_check($auth[$sub_menu], 'w');
try {
foreach ($_POST['config'] as $key => $value) {
$key = clean_xss_tags($key);
$value = clean_xss_tags($value);
if (isset($configs[$key])) {
// 기존 설정 업데이트
$sql = "UPDATE order_config SET config_value = '" . sql_real_escape_string($value) . "' WHERE config_key = '" . sql_real_escape_string($key) . "'";
sql_query($sql);
} else {
// 새 설정 추가 (보안상 기본적으로는 비활성화, 필요 시 주석 해제)
// $sql = "INSERT INTO order_config (config_key, config_value) VALUES ('" . sql_real_escape_string($key) . "', '" . sql_real_escape_string($value) . "')";
// sql_query($sql);
}
}
alert('설정이 저장되었습니다.');
} catch (Exception $e) {
alert('오류: ' . $e->getMessage());
}
}
include_once(G5_ADMIN_PATH . '/admin.head.php');
?>
<div class="local_desc01 local_desc">
<p>
견적 관리 솔루션의 주요 설정을 관리합니다.<br>
타이머, 수수료율, 알림 모드 등을 설정할 수 있습니다.
</p>
</div>
<form name="fconfig" method="post">
<div class="tbl_frm01 tbl_wrap">
<table>
<caption><?php echo $g5['title']; ?></caption>
<colgroup>
<col class="grid_4">
<col>
</colgroup>
<tbody>
<?php foreach ($configs as $key => $config): ?>
<tr>
<th scope="row">
<label for="<?php echo $key; ?>"><?php echo $config['config_desc']; ?></label>
</th>
<td>
<?php if ($config['config_type'] === 'boolean'): ?>
<select name="config[<?php echo $key; ?>]" id="<?php echo $key; ?>">
<option value="1" <?php echo $config['config_value'] == '1' ? 'selected' : ''; ?>>사용</option>
<option value="0" <?php echo $config['config_value'] == '0' ? 'selected' : ''; ?>>미사용</option>
</select>
<?php elseif ($config['config_type'] === 'select' && $key === 'notification_mode'): ?>
<select name="config[<?php echo $key; ?>]" id="<?php echo $key; ?>">
<option value="log" <?php echo $config['config_value'] == 'log' ? 'selected' : ''; ?>>개발 모드 (로그만 기록)</option>
<option value="send" <?php echo $config['config_value'] == 'send' ? 'selected' : ''; ?>>실제 발송 모드</option>
</select>
<?php elseif ($config['config_type'] === 'number'): ?>
<input type="number" name="config[<?php echo $key; ?>]" id="<?php echo $key; ?>"
value="<?php echo htmlspecialchars($config['config_value']); ?>" class="frm_input"
style="width: 100px;">
<?php if (strpos($config['config_desc'], '%') !== false) echo ' %'; ?>
<?php else: ?>
<input type="text" name="config[<?php echo $key; ?>]" id="<?php echo $key; ?>"
value="<?php echo htmlspecialchars($config['config_value']); ?>" class="frm_input"
style="width: 90%;">
<?php endif; ?>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</div>
<div class="btn_confirm01 btn_confirm">
<input type="submit" value="설정 저장" class="btn_submit">
</div>
</form>
<?php
include_once(G5_ADMIN_PATH . '/admin.tail.php');
?>