= htmlspecialchars($news['title']) ?>
= htmlspecialchars(mb_substr(strip_tags($news['content']), 0, 80)) ?>...
prepare("INSERT INTO feedbacks (name, topic, message) VALUES (?, ?, ?)"); if ($stmt->execute([$name, $topic, $message])) { // ส่งแจ้งเตือนเข้า Telegram $stmtSet = $pdo->query("SELECT setting_key, setting_value FROM settings WHERE setting_key IN ('telegram_bot_token', 'telegram_chat_id')"); $tgSettings = []; while ($row = $stmtSet->fetch()) $tgSettings[$row['setting_key']] = $row['setting_value']; $token = $tgSettings['telegram_bot_token'] ?? ''; $chat_id = $tgSettings['telegram_chat_id'] ?? ''; if (!empty($token) && !empty($chat_id)) { $text = "📢 มีข้อเสนอแนะ/ความคิดเห็นใหม่!\n\n"; $text .= "หัวข้อ: {$topic}\n"; $text .= "จาก: {$name}\n"; $text .= "รายละเอียด:\n{$message}"; $url = "https://api.telegram.org/bot{$token}/sendMessage"; $data = ['chat_id' => $chat_id, 'text' => $text, 'parse_mode' => 'HTML']; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, 5); curl_exec($ch); curl_close($ch); } echo json_encode(['status' => 'success']); } else { echo json_encode(['status' => 'error']); } exit; } // ========================================== // 2. ดึงข้อมูล Settings ทั้งหมด (โครงสร้างเว็บ) // ========================================== $stmtSet = $pdo->query("SELECT setting_key, setting_value FROM settings"); $settings = []; while ($row = $stmtSet->fetch()) { $settings[$row['setting_key']] = $row['setting_value']; } $hospitalName = $settings['hospital_name'] ?? 'โรงพยาบาลเกาะสมุย'; $hospitalAddress = $settings['hospital_address'] ?? "2 หมู่ 1 ต.อ่างทอง อ.เกาะสมุย\nจ.สุราษฎร์ธานี 84140"; $contactPhone = $settings['contact_phone'] ?? '077-421-239'; $systemVersion = $settings['system_version'] ?? '2569.2.5'; $heroTitle = $settings['hero_title'] ?? 'ดูแลสุขภาพคุณ'; $heroSubtitle = $settings['hero_subtitle'] ?? 'ด้วยมาตรฐานระดับสากล'; $heroPhoto = $settings['hero_photo_url'] ?? 'https://images.unsplash.com/photo-1586773860418-d37222d8fce3?auto=format&fit=crop&q=80&w=1200'; $directorName = $settings['director_name'] ?? 'นายแพทย์ ชำนาญ สมุยรักษ์'; $directorMessage = $settings['director_message'] ?? 'มุ่งมั่นที่จะยกระดับคุณภาพชีวิตและสุขภาพของพี่น้องประชาชนบนเกาะสมุยและพื้นที่ใกล้เคียง รวมถึงนักท่องเที่ยวจากทั่วโลก ด้วยเทคโนโลยีทางการแพทย์ที่ทันสมัย ระบบความปลอดภัยของข้อมูลสูงสุด และหัวใจที่พร้อมให้บริการ'; $directorPhoto = $settings['director_photo_url'] ?? 'https://images.unsplash.com/photo-1612349317150-e413f6a5b16d?auto=format&fit=crop&q=80&w=600'; $donatePromptpay = $settings['donate_promptpay'] ?? '099-999-9999'; $donateQrcode = $settings['donate_qrcode_url'] ?? ''; $enableGrayscale = $settings['enable_grayscale'] ?? '0'; $logoUrl = "assets/img/logo_MOPH.png"; // ========================================== // 3. ฟังก์ชันดึงข้อมูลตามหมวดหมู่ // ========================================== function formatThaiDate($timestamp) { if (!$timestamp) return '-'; $months = ['', 'ม.ค.', 'ก.พ.', 'มี.ค.', 'เม.ย.', 'พ.ค.', 'มิ.ย.', 'ก.ค.', 'ส.ค.', 'ก.ย.', 'ต.ค.', 'พ.ย.', 'ธ.ค.']; $time = strtotime($timestamp); return sprintf("%02d %s %d", date('d', $time), $months[date('n', $time)], date('Y', $time) + 543); } function getCategoryContents($slug, $limit = 10) { global $pdo; if (!isset($pdo)) return []; $stmt = $pdo->prepare("SELECT * FROM contents WHERE category_slug = ? AND status = 'published' ORDER BY id ASC LIMIT ?"); $stmt->bindValue(1, $slug, PDO::PARAM_STR); $stmt->bindValue(2, $limit, PDO::PARAM_INT); $stmt->execute(); return $stmt->fetchAll(); } function getCategoryContentsDesc($slug, $limit = 5) { global $pdo; $stmt = $pdo->prepare("SELECT * FROM contents WHERE category_slug = ? AND status = 'published' ORDER BY created_at DESC LIMIT ?"); $stmt->bindValue(1, $slug, PDO::PARAM_STR); $stmt->bindValue(2, $limit, PDO::PARAM_INT); $stmt->execute(); return $stmt->fetchAll(); } // ดึงข้อมูลเมนูและบริการ $headerMenus = getCategoryContents('header_menu'); $clinics = getCategoryContents('clinic'); $eServices = getCategoryContents('eservices'); $packages = getCategoryContents('packages', 3); // ดึงข้อมูลข่าวสารและประกาศ $prNews = getCategoryContentsDesc('pr_news'); $jobs = getCategoryContentsDesc('jobs', 20); $procurementSupplies = getCategoryContentsDesc('procurement_supplies', 20); $procurementMeds = getCategoryContentsDesc('procurement_meds', 20); $plans = getCategoryContentsDesc('plan', 20); $finances = getCategoryContentsDesc('finance', 20); $academicWorks = getCategoryContentsDesc('academic'); $laws = getCategoryContentsDesc('laws'); $galleryAlbums = getCategoryContentsDesc('gallery', 8); $downloads = getCategoryContentsDesc('download'); $infographics = getCategoryContentsDesc('infographic'); $itaDocs = getCategoryContentsDesc('ita', 10); // ดึงข้อมูลลิงก์ $internalSystems = getCategoryContents('internal_systems', 8); $relatedAgencies = getCategoryContents('related_agencies', 8); // ดึงสถิติ $statOnline = rand(15, 45); $stmtToday = $pdo->query("SELECT views FROM visitor_stats WHERE visit_date = CURDATE()"); $statToday = $stmtToday->fetchColumn() ?: 0; $stmtMonth = $pdo->query("SELECT SUM(views) FROM visitor_stats WHERE MONTH(visit_date) = MONTH(CURDATE()) AND YEAR(visit_date) = YEAR(CURDATE())"); $statMonth = $stmtMonth->fetchColumn() ?: 0; $stmtTotal = $pdo->query("SELECT SUM(views) FROM visitor_stats"); $statTotal = $stmtTotal->fetchColumn() ?: 0; ?>
#1 มาตรฐานการแพทย์เพื่อทุกชีวิต
= htmlspecialchars($hospitalName) ?> มุ่งมั่นให้บริการทางการแพทย์ที่ปลอดภัย ทันสมัย และใส่ใจดุจญาติมิตร พร้อมเทคโนโลยีการรักษาที่เข้าถึงได้
ทีมบุคลากรของเรา
“= nl2br(htmlspecialchars($directorMessage)) ?>”= htmlspecialchars($directorName) ?> ผู้อำนวยการ= htmlspecialchars($hospitalName) ?>
ระบบบริการดิจิทัลสำหรับประชาชน ใช้งานสะดวกได้ทุกที่
ความเคลื่อนไหวและข้อมูลสำคัญจากทุกภารกิจของโรงพยาบาล
สาระน่ารู้เพื่อการดูแลตัวเอง
ระบบงานสำหรับเจ้าหน้าที่และประชาชน
= htmlspecialchars(mb_substr(strip_tags($sys['content']), 0, 60)) ?>
วันนี้: = number_format($statToday) ?>
เดือนนี้: = number_format($statMonth) ?>
รวมทั้งหมด: = number_format($statTotal) ?>
Date