| Server IP : 172.67.187.206 / Your IP : 172.71.28.155 Web Server : Apache/2.4.25 (Win32) OpenSSL/1.0.2j PHP/5.6.30 System : Windows NT WIN-ECQAAA40806 6.2 build 9200 (Windows Server 2012 Standard Edition) i586 User : SYSTEM ( 0) PHP Version : 5.6.30 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Inetpub/www/education/ |
Upload File : |
<?php
require_once 'config.php';
$page_title = "ข้อมูลสถิติการศึกษาต่อและประกอบอาชีพ สพม.ราชบุรี";
// ดึงปีการศึกษาปัจจุบัน
$current_year = get_current_academic_year(); // ดึงปีการศึกษาจากฟังก์ชันใน config.php
// --- ดึงข้อมูลสรุปรวมทั้งหมด ---
// จำนวนนักเรียนที่เรียนต่อทั้งหมด
$sql_total_continue = "SELECT SUM(student_count) as total_students FROM student_continue_study WHERE academic_year = '$current_year'";
$result_total_continue = mysqli_query($conn, $sql_total_continue);
$row_total_continue = mysqli_fetch_assoc($result_total_continue);
$total_continue_students = (isset($row_total_continue['total_students'])) ? $row_total_continue['total_students'] : 0; // แก้ไขเพื่อรองรับ PHP เวอร์ชันเก่ากว่า 7.0
// จำนวนนักเรียนที่ประกอบอาชีพทั้งหมด
$sql_total_work = "SELECT SUM(student_count) as total_students FROM student_work WHERE academic_year = '$current_year'";
$result_total_work = mysqli_query($conn, $sql_total_work);
$row_total_work = mysqli_fetch_assoc($result_total_work);
$total_work_students = (isset($row_total_work['total_students'])) ? $row_total_work['total_students'] : 0; // แก้ไขเพื่อรองรับ PHP เวอร์ชันเก่ากว่า 7.0
// จำนวนนักเรียนทั้งหมด (จากทั้งเรียนต่อและประกอบอาชีพ)
$overall_total_students = $total_continue_students + $total_work_students;
// --- ดึงข้อมูลรายโรงเรียน ---
$school_data = [];
$sql_schools = "SELECT id, name FROM user WHERE type = 'school' ORDER BY name ASC";
$result_schools = mysqli_query($conn, $sql_schools);
if ($result_schools) {
while ($school = mysqli_fetch_assoc($result_schools)) {
$school_id = $school['id'];
$school_name = $school['name'];
// จำนวนนักเรียนที่เรียนต่อของแต่ละโรงเรียน
$sql_school_continue = "SELECT SUM(student_count) as continue_count FROM student_continue_study WHERE user_id = $school_id AND academic_year = '$current_year'";
$result_school_continue = mysqli_query($conn, $sql_school_continue);
$row_school_continue = mysqli_fetch_assoc($result_school_continue);
$school_continue_count = (isset($row_school_continue['continue_count'])) ? $row_school_continue['continue_count'] : 0; // แก้ไขเพื่อรองรับ PHP เวอร์ชันเก่ากว่า 7.0
// จำนวนนักเรียนที่ประกอบอาชีพของแต่ละโรงเรียน
$sql_school_work = "SELECT SUM(student_count) as work_count FROM student_work WHERE user_id = $school_id AND academic_year = '$current_year'";
$result_school_work = mysqli_query($conn, $sql_school_work);
$row_school_work = mysqli_fetch_assoc($result_school_work);
$school_work_count = (isset($row_school_work['work_count'])) ? $row_school_work['work_count'] : 0; // แก้ไขเพื่อรองรับ PHP เวอร์ชันเก่ากว่า 7.0
$school_total_students = $school_continue_count + $school_work_count;
$school_data[] = [
'id' => $school_id,
'name' => $school_name,
'total_students' => $school_total_students,
'continue_study_count' => $school_continue_count,
'work_count' => $school_work_count
];
}
}
include 'template/header.php';
?>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
<div class="container-fluid main-content">
<div class="row">
<div class="col-12 text-center text-white mb-4">
<h2 class="mb-2">
<i class="bi bi-bar-chart-line me-2"></i>
ข้อมูลสถิติการศึกษาต่อและประกอบอาชีพ <br>สำนักงานเขตพื้นที่การศึกษามัธยมศึกษาราชบุรี
</h2>
<h4 class="mb-4">ปีการศึกษา <?php echo $current_year; ?></h4>
<a href="login.php" class="btn btn-primary btn-lg mt-3"><i class="bi bi-box-arrow-in-right me-2"></i>เข้าสู่ระบบ (สำหรับโรงเรียน/แอดมิน)</a>
</div>
</div>
<div class="row justify-content-center">
<div class="col-md-4">
<div class="card stats-card fade-in">
<div class="card-body text-center">
<div class="stats-number"><?php echo number_format($overall_total_students); ?></div>
<p class="stats-text fs-5">นักเรียนในระบบทั้งหมด</p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card stats-card fade-in" style="background: linear-gradient(135deg, #20bf55 0%, #01baef 100%);">
<div class="card-body text-center">
<div class="stats-number"><?php echo number_format($total_continue_students); ?></div>
<p class="stats-text fs-5">นักเรียนที่เรียนต่อ</p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card stats-card fade-in" style="background: linear-gradient(135deg, #f7b733 0%, #fc4a1a 100%);">
<div class="card-body text-center">
<div class="stats-number"><?php echo number_format($total_work_students); ?></div>
<p class="stats-text fs-5">นักเรียนที่ประกอบอาชีพ</p>
</div>
</div>
</div>
</div>
<div class="row justify-content-center mt-4">
<div class="col-md-8">
<div class="card shadow-sm fade-in">
<div class="card-header text-center">
<h5 class="mb-0"><i class="bi bi-pie-chart-fill me-2"></i>กราฟแสดงเปอร์เซ็นต์การศึกษาต่อและการประกอบอาชีพ</h5>
</div>
<div class="card-body">
<div style="height: 400px;">
<canvas id="studentStatusChart"></canvas>
</div>
</div>
</div>
</div>
</div>
<div class="row justify-content-center mt-4">
<div class="col-12">
<div class="card shadow-sm fade-in">
<div class="card-header text-center">
<h5 class="mb-0"><i class="bi bi-table me-2"></i>ข้อมูลนักเรียนรายโรงเรียน ปีการศึกษา <?php echo $current_year; ?></h5>
</div>
<div class="card-body">
<div class="table-responsive">
<table class="table table-hover table-bordered align-middle">
<thead class="table-primary">
<tr>
<th>ลำดับ</th>
<th>ชื่อโรงเรียน</th>
<th class="text-center">จำนวนนักเรียนทั้งหมด</th>
<th class="text-center">เรียนต่อ</th>
<th class="text-center">ประกอบอาชีพ</th>
<th class="text-center">ดูรายละเอียด</th>
</tr>
</thead>
<tbody>
<?php if (!empty($school_data)): ?>
<?php $i = 1; foreach ($school_data as $school): ?>
<tr>
<td><?php echo $i++; ?></td>
<td><?php echo htmlspecialchars($school['name']); ?></td>
<td class="text-center"><?php echo number_format($school['total_students']); ?></td>
<td class="text-center"><?php echo number_format($school['continue_study_count']); ?></td>
<td class="text-center"><?php echo number_format($school['work_count']); ?></td>
<td class="text-center">
<a href="school_detail.php?school_id=<?php echo $school['id']; ?>&academic_year=<?php echo $current_year; ?>" class="btn btn-info btn-sm">
<i class="bi bi-eye"></i> ดู
</a>
</td>
</tr>
<?php endforeach; ?>
<?php else: ?>
<tr>
<td colspan="6" class="text-center text-muted py-3">
<i class="bi bi-exclamation-circle me-2"></i>ไม่พบข้อมูลโรงเรียนหรือนักเรียนสำหรับปีการศึกษา <?php echo $current_year; ?>
</td>
</tr>
<?php endif; ?>
</tbody>
<tfoot>
<tr class="table-dark">
<td colspan="2" class="text-end fw-bold">รวมทั้งหมด:</td>
<td class="text-center fw-bold"><?php echo number_format($overall_total_students); ?></td>
<td class="text-center fw-bold"><?php echo number_format($total_continue_students); ?></td>
<td class="text-center fw-bold"><?php echo number_format($total_work_students); ?></td>
<td></td>
</tr>
</tfoot>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
// Register the datalabels plugin globally
Chart.register(ChartDataLabels);
document.addEventListener('DOMContentLoaded', function() {
// Pie chart for comparison
const pieCtx = document.getElementById('studentStatusChart').getContext('2d');
const studentStatusChart = new Chart(pieCtx, {
type: 'pie', // Pie chart for percentage comparison
data: {
labels: ['นักเรียนเรียนต่อ', 'นักเรียนประกอบอาชีพ'],
datasets: [{
data: [<?php echo $total_continue_students; ?>, <?php echo $total_work_students; ?>],
backgroundColor: [
'rgba(32, 191, 85, 0.7)', // Green for 'continue'
'rgba(252, 74, 26, 0.7)' // Orange for 'work'
],
borderColor: [
'rgba(32, 191, 85, 1)',
'rgba(252, 74, 26, 1)'
],
borderWidth: 1
}]
},
options: {
responsive: true,
maintainAspectRatio: false,
plugins: {
title: {
display: true,
text: 'เปอร์เซ็นต์การศึกษาต่อและการประกอบอาชีพ',
font: {
size: 16
}
},
legend: {
position: 'bottom',
},
datalabels: {
formatter: (value, ctx) => {
let sum = 0;
let dataArr = ctx.chart.data.datasets[0].data;
dataArr.map(data => {
sum += data;
});
let percentage = (value * 100 / sum).toFixed(2) + "%";
return percentage;
},
color: '#fff',
font: {
weight: 'bold',
size: 14
}
}
}
}
});
});
</script>
<?php include 'template/footer.php'; ?>