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'; ?>

Parent Engagement Portal

Stay updated on your child's progress with minimal data usage.

Find My Child
No learner found with ID . Please contact the school office.

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.
Present Absent
Assessment Score Percentage
No assessment results recorded yet.

()
/ %

Please enter a Student ID to view your child's progress.