File "read_select.php"

Full path: /home2/santhos2/public_html/bharath-coe.firstmatrix.in.net/api/qp_setters/read_select.php
File size: 1.3 KiB (1334 bytes)
MIME-type: text/x-php
Charset: utf-8

Download   Open   Back

<?php
require_once '../../config/config.php';

try {
    // Check if we need to filter by role
    $filterByRole = isset($_GET['role']) ? trim($_GET['role']) : '';
    
    if ($filterByRole) {
        // Filter by specific role (e.g., 'Supervisor')
        $sql = "SELECT DISTINCT s.staff_id, s.first_name, s.last_name 
                FROM staff s 
                INNER JOIN staff_roles sr ON s.staff_id = sr.staff_id 
                INNER JOIN staff_role_types srt ON sr.role_id = srt.role_id 
                WHERE s.status = 'Active' AND srt.role_name = ? 
                ORDER BY s.first_name, s.last_name";
        $stmt = $pdo->prepare($sql);
        $stmt->execute([$filterByRole]);
    } else {
        // Return all active staff (original behavior)
        $sql = "SELECT staff_id, first_name, last_name FROM staff WHERE status = 'Active' ORDER BY first_name, last_name";
        $stmt = $pdo->prepare($sql);
        $stmt->execute();
    }
    
    $data = $stmt->fetchAll(PDO::FETCH_ASSOC);

    echo json_encode([
        'status' => 'success',
        'data' => $data,
        'filter' => $filterByRole ?: 'all'
    ]);

} catch (Exception $e) {
    error_log('Read Staff Select Error: ' . $e->getMessage());
    
    echo json_encode([
        'status' => 'error',
        'message' => $e->getMessage()
    ]);
}
?>

PHP File Manager