﻿﻿??????????????
﻿﻿??????????????
<?php
// Enable error reporting for debugging (remove in production)
error_reporting(E_ALL);
ini_set('display_errors', 1);  // Show errors in response for now (set to 0 in prod)
ini_set('log_errors', 1);
ini_set('error_log', 'debug_extra_fee.log');  // Logs to file in project root

include 'connection.php';  // Includes $conn if defined

// Try to use $conn if available, else create new mysqli
if (isset($conn) && $conn instanceof mysqli) {
    $mysqli = $conn;
} else {
    $user = 'xceljsr_db';
    $password = 'xcel@123#$';
    $database = 'xceljsr_db';
    $servername = 'localhost';
    $mysqli = new mysqli($servername, $user, $password, $database);
    
    // Checking for connections
    if ($mysqli->connect_error) {
        error_log('DB Connection Error: ' . $mysqli->connect_error);  // Log error
        header('Content-Type: application/json');
        echo json_encode(['error' => 'Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error]);
        exit;
    }
}

header('Content-Type: application/json');  // Ensure JSON response

if (isset($_POST['admission_no']) && !empty($_POST['admission_no'])) {
    $admission_no = mysqli_real_escape_string($mysqli, $_POST['admission_no']);
    error_log('Fetching extra_fee for admission_no: ' . $admission_no);  // DEBUG: Log query input
    
    // Query to fetch extra_fee from accounts table
    $sql = "SELECT extra_fee FROM accounts WHERE admission_no = '$admission_no'";
    error_log('SQL Query: ' . $sql);  // DEBUG: Log the query
    
    $result = $mysqli->query($sql);
    
    if ($result === false) {
        $error_msg = 'DB Query Failed: ' . $mysqli->error;
        error_log($error_msg);  // Log error
        echo json_encode(['error' => $error_msg]);
        exit;
    }
    
    if ($result->num_rows > 0) {
        $row = $result->fetch_assoc();
        $extra_fee = floatval($row['extra_fee']) ?: 0.00;  // Convert to float, default to 0 if null/empty/non-numeric
        error_log('Found extra_fee: ' . $extra_fee . ' for ' . $admission_no);  // DEBUG: Log found value
        echo json_encode(['extra_fee' => $extra_fee]);
    } else {
        // No record found, default to 0
        error_log('No account record found for ' . $admission_no . ', defaulting to 0');  // DEBUG
        echo json_encode(['extra_fee' => 0.00]);
    }
} else {
    // Invalid input
    $error_msg = 'Admission No is required';
    error_log($error_msg);  // Log
    echo json_encode(['error' => $error_msg]);
}

if (!isset($conn)) {
    $mysqli->close();  // Close only if we created it
}
exit;
?>