File: /var/www/w230/html/behavior/view_behavior.php
<?php include 'db.php';
session_start();
$user_class = $_SESSION['user_class'];
// ดึงรูปผู้ใช้
$user_id = $_SESSION['user_id'];
$user_result = $conn->query("SELECT img FROM users WHERE id = '$user_id'");
$user_data = $user_result->fetch_assoc();
$user_img = !empty($user_data['img']) ? $user_data['img'] : 'default.png'; // กรณีไม่มีรูป
?>
<!DOCTYPE html>
<html lang="th">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>รายการพฤติกรรม</title>
<link rel="stylesheet" href="plugins/fontawesome-free/css/all.min.css">
<link rel="stylesheet" href="plugins/font-awesome/css/font-awesome.min.css">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Prompt&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
body {
font-family: 'Prompt', sans-serif;
background: linear-gradient(to right, #f0fff0, #ffffe0);
}
.container-fluid {
padding: 15px;
}
.footer-custom {
background: linear-gradient(to right, #a8e063, #fcd34d); /* เขียว -> เหลือง */
box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.2);
}
html, body {
height: 100%;
}
body {
display: flex;
flex-direction: column;
}
footer {
margin-top: auto;
}
</style>
</head>
<body>
<div class="container-fluid">
<div class="d-flex flex-column flex-md-row justify-content-between align-items-center mb-3">
<img src="uploads/<?= htmlspecialchars($user_img) ?>" class="rounded-circle me-2" width="120" height="125">
<h4 class="mb-2 mb-md-0">ยินดีต้อนรับคุณ <?= $_SESSION['user_name'] . " Class: " . $_SESSION['user_class']; ?></h4>
<a href="logout.php" class="btn btn-danger">ออกจากระบบ</a>
</div>
<div class="row g-3 mb-4">
<div class="col-12 col-sm-6 col-md-4">
<a href="add_behavior.php" class="btn btn-primary w-100"><i class="fa fa-blind bx-sm"></i> บันทึกคะแนนพฤติกรรม</a>
</div>
<div class="col-12 col-sm-6 col-md-4">
<a href="dashboard.php" class="btn btn-info w-100"><i class="fa fa-line-chart bx-sm"></i> รายงานคะแนน</a>
</div>
<div class="col-12 col-sm-6 col-md-4">
<a href="view_behavior.php" class="btn btn-success w-100"><i class="fa fa-user-o" aria-hidden="true"></i> รายงานคะแนนบุคคล</a>
</div>
</div>
<form method="get" class="row g-2 align-items-center mb-4">
<div class="col-12 col-md-9">
<select name="student_id" class="form-select">
<option value="">-- เลือกชื่อนักเรียน --</option>
<?php
$students = mysqli_query($conn, "SELECT id, fullname FROM students WHERE class = '$user_class' ORDER BY fullname ASC");
$selected_id = $_GET['student_id'] ?? '';
while ($student = mysqli_fetch_assoc($students)) {
$selected = ($selected_id == $student['id']) ? 'selected' : '';
echo "<option value='{$student['id']}' $selected>{$student['fullname']}</option>";
}
?>
</select>
</div>
<div class="col-12 col-md-3">
<button class="btn btn-primary w-100" type="submit">ค้นหา</button>
</div>
</form>
<?php if (!empty($_GET['student_id'])): ?>
<?php
$student_id = $_GET['student_id'];
$sql = "SELECT behavior.*, students.fullname
FROM behavior
JOIN students ON behavior.student_id = students.id
WHERE behavior.student_id = '" . mysqli_real_escape_string($conn, $student_id) . "'
ORDER BY behavior.created_at DESC";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0):
?>
<h2 class="mb-3">รายการพฤติกรรมที่ตัดคะแนน</h2>
<div class="table-responsive">
<table class="table table-striped text-nowrap">
<thead>
<tr>
<th>วันที่</th>
<th>ชื่อนักเรียน</th>
<th>พฤติกรรม</th>
<th>คะแนนที่ตัด</th>
</tr>
</thead>
<tbody>
<?php while ($row = mysqli_fetch_assoc($result)) {
echo "<tr>
<td>{$row['created_at']}</td>
<td>{$row['fullname']}</td>
<td>{$row['behavior_detail']}</td>
<td>{$row['points']}</td>
</tr>";
} ?>
</tbody>
</table>
</div>
<div class="text-end mt-3">
<a href="export_behavior_csv.php?student_id=<?= urlencode($student_id) ?>" class="btn btn-outline-success">📥 ส่งออก CSV</a>
</div>
<?php else: ?>
<div class="alert alert-success">🎉 นักเรียนคนนี้ไม่มีประวัติการถูกตัดคะแนนความประพฤติ ขอชื่นชมในความประพฤติที่ดี!</div>
<?php endif; ?>
<?php else: ?>
<div class="alert alert-warning">⚠ กรุณาเลือกชื่อนักเรียนเพื่อแสดงข้อมูลพฤติกรรม</div>
<?php endif; ?>
</div>
<?php include 'footer.php'; ?>
</body>
</html>