query( 'SELECT EXISTS ( SELECT 1 FROM "Users" WHERE "ID" = $1 )', array($uid) )['data']['0']['exists'] == 'f' ) { $error = 15102; } else { $score_all = $db->query( 'SELECT COALESCE("highscore", -1) as "highscore" FROM "Users" WHERE "ID" = $1', array($uid) )['data'][0]['highscore']; $all = $db->query( 'SELECT COUNT (*) FROM "Users"' )['data'][0]['count']; $place_all = $db->query( 'SELECT COUNT (*) FROM "Users" WHERE "highscore" > $1', array($score_all) )['data'][0]['count'] + 1; //get categories highscores $categories = $db->query( 'SELECT "ID", "name" FROM "Categories"')['data']; foreach($categories as $category) { $cid = $category['ID']; $cat = $category['name']; $score = $db->query( 'SELECT "score" FROM "Highscores" WHERE "Users_ID" = $1 AND "Categories_ID" = $2', array($uid, $cid) )['data'][0]['score']; $score = ($score == null) ? -1 : $score; $place = $db->query( 'SELECT COUNT (*) FROM "Highscores" WHERE "Categories_ID" = $1 AND "score" > $2', array($cid, $score) )['data'][0]['count'] + 1; $cat_scores[] = array( 'id' => $cid, 'name' => $cat, 'score' => $score, 'place' => $place ); } $data = array( 'score' => $score_all, 'place' => $place_all, 'all' => $all, 'categories' => $cat_scores); } $response = Database::create_response($data, $error); print_r($response); ?>