prepare("SELECT l.*, s.name as school_name FROM learners l JOIN schools s ON l.school_id = s.id WHERE l.student_id = ?"); $stmt->execute([$search_id]); $learner = $stmt->fetch(); if ($learner) { // Fetch Attendance History (Last 30 days) $stmt = $db->prepare("SELECT * FROM attendance WHERE learner_id = ? ORDER BY date DESC LIMIT 30"); $stmt->execute([$learner['id']]); $attendance_history = $stmt->fetchAll(); // Fetch Assessment Results $stmt = $db->prepare(" SELECT a.name, a.type, a.total_marks, m.marks_obtained, a.created_at FROM marks m JOIN assessments a ON m.assessment_id = a.id WHERE m.learner_id = ? ORDER BY a.created_at DESC "); $stmt->execute([$learner['id']]); $assessment_results = $stmt->fetchAll(); } } include 'includes/header.php'; ?>
Stay updated on your child's progress with minimal data usage.
Grade
Attendance (30d)
0 ? round(($present / $total) * 100) : 0; ?>Academic Avg
0 ? round($total_perc / $count, 1) : 0; ?>| Date | Status |
|---|---|
| No attendance records found for the last 30 days. | |
| = date('l, d M Y', strtotime($record['date'])) ?> | Present Absent |
| Assessment | Score | Percentage |
|---|---|---|
| No assessment results recorded yet. | ||
|
= htmlspecialchars($res['name']) ?>
= htmlspecialchars($res['type']) ?> (= date('d M Y', strtotime($res['created_at'])) ?>) |
= $res['marks_obtained'] ?> / = $res['total_marks'] ?> | = $p ?>% |
Please enter a Student ID to view your child's progress.