Fix #18: Exception leak remediation across 87 PHP files

- Replaced all client-facing $e->getMessage() with generic error messages
- Added error_log() with filename prefix to all catch blocks
- Covered jsonError(), echo, and json_encode() response patterns
- Also fixed 2 remaining display_errors=1 and add_invoice.php leak
- Script-assisted fix for 75 files, manual fix for 12 remaining edge cases
This commit is contained in:
Hamza-Ayed
2026-06-17 07:48:31 +03:00
parent e51d266a0f
commit 72eeb24cd7
88 changed files with 240 additions and 100 deletions

View File

@@ -37,5 +37,6 @@ try {
}
} catch (PDOException $e) {
jsonError("Error: " . $e->getMessage());
error_log("[deleteCaptain.php] " . $e->getMessage());
jsonError("An internal error occurred. Please try again later.");
}

View File

@@ -24,7 +24,7 @@ try {
}
} catch (PDOException $e) {
// Handle any SQL errors
jsonError("Error deleting records: " . $e->getMessage());
jsonError("An internal error occurred. Please try again later.");
}
?>

View File

@@ -51,5 +51,6 @@ try {
}
} catch (PDOException $e) {
jsonError("Error searching driver: " . $e->getMessage());
error_log("[find_driver_by_phone.php] " . $e->getMessage());
jsonError("An internal error occurred. Please try again later.");
}

View File

@@ -23,5 +23,6 @@ try {
}
} catch (PDOException $e) {
jsonError("Error removing from blacklist: " . $e->getMessage());
error_log("[remove_from_blacklist.php] " . $e->getMessage());
jsonError("An internal error occurred. Please try again later.");
}

View File

@@ -72,6 +72,7 @@ try {
jsonError("No records updated or driver not found.");
}
} catch (PDOException $e) {
jsonError("Error updating record: " . $e->getMessage());
error_log("[updateDriverFromAdmin.php] " . $e->getMessage());
jsonError("An internal error occurred. Please try again later.");
}
?>