prepare("SELECT * FROM learning_resources WHERE status = 'approved' AND province = ? ORDER BY status ASC, name ASC"); $stmt->execute([$province]); } else { $stmt = $pdo->query("SELECT * FROM learning_resources WHERE status = 'approved' ORDER BY status ASC, id DESC LIMIT 50"); } echo json_encode($stmt->fetchAll()); break; case 'summary_report': $type = $_GET['type'] ?? 'wisdom'; // wisdom, subject, type $branches = []; $column = ''; if ($type == 'wisdom') { $branches = ['สาขาเกษตรกรรม', 'สาขาอุตสาหกรรมและหัตถกรรม (ด้านการผลิตและการบริโภค)', 'สาขาการแพทย์แผนไทย', 'สาขาการจัดการทรัพยากรธรรมชาติและสิ่งแวดล้อม', 'สาขากองทุนและธุรกิจชุมชน', 'สาขาศิลปกรรม', 'สาขาการจัดการองค์กร', 'สาขาภาษาและวรรณกรรม', 'สาขาศาสนาและประเพณี', 'สาขาสวัสดิการ', 'สาขาการศึกษา', 'สาขาโภชนาการ']; $column = 'wisdom_branch'; } elseif ($type == 'subject') { $branches = ['ภาษาไทย', 'ภาษาต่างประเทศ (ภาษาอังกฤษ)', 'คณิตศาสตร์', 'วิทยาศาสตร์', 'เทคโนโลยีดิจิทัล', 'การงานอาชีพ', 'สุขภาวะและศิลปะ', 'สังคมศึกษา ศาสนา และวัฒนธรรม']; $column = 'subject'; } elseif ($type == 'type') { $branches = ['บุคคล', 'สื่อ นวัตกรรม เทคโนโลยี และสิ่งประดิษฐ์คิดค้น', 'สถานที่']; $column = 'type'; } $sql = "SELECT province, $column as category, COUNT(*) as count FROM learning_resources WHERE status = 'approved' GROUP BY province, $column"; $results = $pdo->query($sql)->fetchAll(); $summary = []; foreach ($results as $row) { $prov = $row['province'] ?: 'ไม่ระบุ'; if (!isset($summary[$prov])) { $summary[$prov] = array_fill_keys($branches, 0); } if (in_array($row['category'], $branches)) { $summary[$prov][$row['category']] = (int)$row['count']; } } echo json_encode([ 'branches' => $branches, 'data' => $summary ]); break; case 'stats_top_provinces': $stmt = $pdo->query("SELECT province, COUNT(*) as count FROM learning_resources WHERE status = 'approved' GROUP BY province ORDER BY count DESC LIMIT 10"); echo json_encode($stmt->fetchAll()); break; case 'resource_detail': $id = $_GET['id'] ?? 0; $stmt = $pdo->prepare("SELECT * FROM learning_resources WHERE status = 'approved' AND id = ?"); $stmt->execute([$id]); echo json_encode($stmt->fetch()); break; case 'activities': $stmt = $pdo->query("SELECT * FROM featured_activities ORDER BY activity_date DESC LIMIT 10"); echo json_encode($stmt->fetchAll()); break; case 'knowledge': $category = $_GET['category'] ?? 'article'; $stmt = $pdo->prepare("SELECT * FROM knowledge_bank WHERE category = ? ORDER BY id DESC"); $stmt->execute([$category]); echo json_encode($stmt->fetchAll()); break; case 'programs': $stmt = $pdo->query("SELECT * FROM learning_programs ORDER BY created_at DESC"); echo json_encode($stmt->fetchAll()); break; default: echo json_encode(['error' => 'Invalid action']); } ?>