togethere.cloud/public_html/api/getUser.php

84 lines
2.0 KiB
PHP

<?php
header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
// Konfiguracja bazy danych
$host = "localhost";
$db = "togethere_cloud";
$user = "root";
$pass = "HasloDoSQL";
try {
$pdo->exec("SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci");
} catch (PDOException $e) {
http_response_code(500);
echo json_encode([
'success' => false,
'error' => 'Błąd połączenia z bazą danych: ' . $e->getMessage()
], JSON_UNESCAPED_UNICODE);
exit;
}
$userId = isset($_GET['id']) ? (int)$_GET['id'] : 0;
if ($userId <= 0) {
http_response_code(400);
echo json_encode([
'success' => false,
'error' => 'Nieprawidłowe ID użytkownika'
], JSON_UNESCAPED_UNICODE);
exit;
}
try {
$stmt = $pdo->prepare("
SELECT
u.id,
u.username,
u.email,
u.first_name,
u.last_name,
u.role,
u.email_verified,
u.created_at,
u.account_suspended,
u.disabled,
u.newsletter_enabled,
us.balance,
us.matches_played,
us.matches_won,
us.matches_lost,
us.account_status
FROM users u
LEFT JOIN user_stats us ON u.id = us.user_id
WHERE u.id = ?
");
$stmt->execute([$userId]);
$user = $stmt->fetch(PDO::FETCH_ASSOC);
if (!$user) {
http_response_code(404);
echo json_encode([
'success' => false,
'error' => 'Użytkownik nie istnieje'
], JSON_UNESCAPED_UNICODE);
exit;
}
echo json_encode([
'success' => true,
'data' => $user
], JSON_UNESCAPED_UNICODE);
} catch (PDOException $e) {
http_response_code(500);
echo json_encode([
'success' => false,
'error' => 'Błąd podczas pobierania użytkownika: ' . $e->getMessage()
], JSON_UNESCAPED_UNICODE);
}
?>