mirror of
https://github.com/Alvin-Zilverstand/pokedex.git
synced 2026-03-06 13:25:11 +01:00
Improve error handling in competitors data fetching; ensure JSON responses and display error messages on failure
This commit is contained in:
@@ -17,30 +17,38 @@ $conn = new mysqli($servername, $username, $password, $dbname);
|
||||
|
||||
if ($conn->connect_error) {
|
||||
logMessage("Connection failed: " . $conn->connect_error);
|
||||
die("Connection failed: " . $conn->connect_error);
|
||||
header("Content-Type: application/json");
|
||||
http_response_code(500);
|
||||
echo json_encode(["error" => "Database connection failed"]);
|
||||
exit;
|
||||
}
|
||||
|
||||
header("Cache-Control: max-age=86400"); // Cache for 24 hours
|
||||
header("Content-Type: application/json"); // Ensure JSON response
|
||||
|
||||
// Fetch competitors data
|
||||
$sql = "SELECT user_id, COUNT(pokemon_id) AS pokemon_count
|
||||
FROM user_pokemon
|
||||
GROUP BY user_id
|
||||
ORDER BY pokemon_count DESC";
|
||||
logMessage("Executing query: $sql");
|
||||
$result = $conn->query($sql);
|
||||
try {
|
||||
// Fetch competitors data
|
||||
$sql = "SELECT user_id, COUNT(pokemon_id) AS pokemon_count
|
||||
FROM user_pokemon
|
||||
GROUP BY user_id
|
||||
ORDER BY pokemon_count DESC";
|
||||
logMessage("Executing query: $sql");
|
||||
$result = $conn->query($sql);
|
||||
|
||||
if ($result) {
|
||||
$competitors = [];
|
||||
while ($row = $result->fetch_assoc()) {
|
||||
$competitors[] = $row;
|
||||
if ($result) {
|
||||
$competitors = [];
|
||||
while ($row = $result->fetch_assoc()) {
|
||||
$competitors[] = $row;
|
||||
}
|
||||
logMessage("Query result: " . json_encode($competitors));
|
||||
echo json_encode($competitors);
|
||||
} else {
|
||||
throw new Exception("Error executing query: " . $conn->error);
|
||||
}
|
||||
logMessage("Query result: " . json_encode($competitors));
|
||||
echo json_encode($competitors);
|
||||
} else {
|
||||
logMessage("Error executing query: " . $conn->error);
|
||||
echo json_encode(["error" => "Error fetching competitors data"]);
|
||||
} catch (Exception $e) {
|
||||
logMessage("Exception: " . $e->getMessage());
|
||||
http_response_code(500);
|
||||
echo json_encode(["error" => "An error occurred while fetching competitors data"]);
|
||||
}
|
||||
|
||||
$conn->close();
|
||||
|
||||
Reference in New Issue
Block a user