diff --git a/admin/backend_settings.php b/admin/backend_settings.php index a61eba1..e4138ee 100644 --- a/admin/backend_settings.php +++ b/admin/backend_settings.php @@ -1,17 +1,6 @@ prepare("SELECT setting_value FROM system_settings WHERE setting_key = ?"); - $stmt->execute([$key]); - $val = $stmt->fetchColumn(); - return $val !== false ? $val : $default; - } catch (Exception $e) { - return $default; - } -} - if ($_SERVER['REQUEST_METHOD'] === 'POST') { $settings = [ 'email_verification_enabled' => $_POST['email_verification_enabled'] ?? '0', @@ -56,18 +45,42 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') { $stmt->execute([$favicon_path, $favicon_path]); } } + + // Handle certificate upload if provided + if (isset($_FILES['certificate_files']) && !empty($_FILES['certificate_files']['name'][0])) { + $paths = []; + foreach ($_FILES['certificate_files']['name'] as $i => $name) { + if ($_FILES['certificate_files']['error'][$i] === 0) { + $ext = pathinfo($name, PATHINFO_EXTENSION); + $filename = 'certificate_' . time() . '_' . $i . '.' . $ext; + $target = __DIR__ . '/../assets/images/' . $filename; + if (!is_dir(__DIR__ . '/../assets/images/')) { + mkdir(__DIR__ . '/../assets/images/', 0777, true); + } + if (move_uploaded_file($_FILES['certificate_files']['tmp_name'][$i], $target)) { + $paths[] = '/assets/images/' . $filename; + } + } + } + if (!empty($paths)) { + $certificate_path = json_encode($paths); + $stmt = db()->prepare("INSERT INTO system_settings (setting_key, setting_value) VALUES ('site_certificate', ?) ON DUPLICATE KEY UPDATE setting_value = ?"); + $stmt->execute([$certificate_path, $certificate_path]); + } + } $success = true; } -$email_verify = getLocalSetting('email_verification_enabled', '0'); -$site_logo = getLocalSetting('site_logo', ''); -$site_favicon = getLocalSetting('site_favicon', ''); -$trc20_addr = getLocalSetting('usdt_trc20_address', ''); -$erc20_addr = getLocalSetting('usdt_erc20_address', ''); -$bep20_addr = getLocalSetting('usdt_bep20_address', ''); -$service_link = getLocalSetting('service_link', ''); -$site_name = getLocalSetting('site_name', 'Byro'); +$email_verify = getSetting('email_verification_enabled', '0'); +$site_logo = getSetting('site_logo', ''); +$site_favicon = getSetting('site_favicon', ''); +$site_certificate = getSetting('site_certificate', ''); +$trc20_addr = getSetting('usdt_trc20_address', ''); +$erc20_addr = getSetting('usdt_erc20_address', ''); +$bep20_addr = getSetting('usdt_bep20_address', ''); +$service_link = getSetting('service_link', ''); +$site_name = getSetting('site_name', 'Byro'); $title = '后台设置'; ob_start(); @@ -101,7 +114,7 @@ ob_start();