<?php global $OPTIONS; require_once (__DIR__ . '/../internals/base.php'); require_once (__DIR__ . '/../internals/database.php'); require_once (__DIR__ . '/../internals/highscores.php'); Database::connect(); $gameid = $OPTIONS['gameid']; $check = $OPTIONS['check']; $name = $OPTIONS['name']; $nameid = $OPTIONS['nameid']; $rand = $OPTIONS['rand']; $points = $OPTIONS['points']; if (! is_numeric($gameid)) httpError(400, 'Invalid Request'); if (! is_numeric($nameid)) httpError(400, 'Invalid Request'); if (! is_numeric($points)) httpError(400, 'Invalid Request'); $game = Highscores::getGameByID($OPTIONS['gameid']); if ($game == NULL) httpError(400, 'Invalid Request'); $checksum_generated = Highscores::generateChecksum($rand, $name, $nameid, $points, $game['SALT']); if ($checksum_generated != $check) die('Nice try !'); $old = Highscores::getSpecificScore($gameid, $nameid); if ($old == null) { Highscores::insert($gameid, $points, $name, $nameid, $check, date("Y-m-d H:m:s", time()), $_SERVER['REMOTE_ADDR']); echo 'ok.'; } else { Highscores::update($gameid, $points, $name, $nameid, $check, date("Y-m-d H:m:s", time()), $_SERVER['REMOTE_ADDR']); echo 'ok.'; }