/
home
/
techb158
/
workloadmatch.com
/
workloadmatch.com
/
api
/
reports
/
/home/techb158/workloadmatch.com/workloadmatch.com/api/reports
mkdir
upload
Name
Size
Mode
Actions
schedule-by-course.php
3063
0644
edit
dl
rm
schedule-by-group.php
2321
0644
edit
dl
rm
Edit:
/home/techb158/workloadmatch.com/workloadmatch.com/api/reports/schedule-by-group.php
(2321B)
<?php // File: /api/reports/schedule-by-group.php error_reporting(E_ALL); ini_set('display_errors', 1); // api/teacher/profile.php (GET request) header('Content-Type: application/json'); include_once '../db_connect.php'; include_once '../api_functions.php'; // Start a secure session sec_session_start(); if (!isset($_SESSION['user_id'])) { http_response_code(401); echo json_encode([ "status" => "error", "message" => "Unauthorized: Please log in." ]); exit(); } $teacherId = $_SESSION['user_id']; // Build the query to fetch schedule records for the logged-in teacher. // This query joins: // - Teacher_Course_Assignments (alias s) // - Programs (p) to get Program_Name // - Courses (c) to get Course_Name // - Manager_Group_Name (g) to get Group_Name // - Course_Group_Schedule (cs) to retrieve scheduling details // And it filters records by s.Teacher_ID. $query = "SELECT s.Schedule_ID, s.Program_ID, p.Program_Name, s.Course_ID, c.Course_Name, s.Group_ID, g.Group_Name, cs.Time_Slot, cs.Start_Date, cs.End_Date, cs.Start_Time, cs.End_Time, cs.Assigned FROM Teacher_Course_Assignments s JOIN Programs p ON p.Program_ID = s.Program_ID JOIN Courses c ON s.Course_ID = c.Course_ID JOIN Manager_Group_Name g ON g.Group_ID = s.Group_ID JOIN Course_Group_Schedule cs ON cs.Schedule_ID = s.Schedule_ID WHERE s.Teacher_ID = ? ORDER BY s.Group_ID, cs.Start_Date"; if ($stmt = $mysqli->prepare($query)) { $stmt->bind_param("i", $teacherId); $stmt->execute(); $result = $stmt->get_result(); $data = []; // Group the records by Group_ID while ($row = $result->fetch_assoc()) { $data[$row['Group_ID']][] = $row; } echo json_encode([ "status" => "success", "data" => $data ]); $stmt->close(); } else { http_response_code(500); echo json_encode([ "status" => "error", "message" => "Database error: " . $mysqli->error ]); } exit(); ?>
Save
cmd:
run