0 ) { mysql_query( 'DELETE FROM glestserver WHERE ' . $whereClause . ';'); mysql_query( 'DELETE FROM glestgamestats WHERE ' . $whereClause . ';'); mysql_query( 'DELETE FROM glestgameplayerstats WHERE ' . $whereClause . ';'); echo 'OK - ' . $gameDuration; return; } } $stats_in_db = @mysql_query( 'SELECT COUNT(*) FROM glestgamestats WHERE ' . $whereClause . ';' ); $statsCount = @mysql_fetch_row( $stats_in_db ); $player_stats_in_db = @mysql_query( 'SELECT COUNT(*) FROM glestgameplayerstats WHERE ' . $whereClause . ';'); $player_statsCount = @mysql_fetch_row( $player_stats_in_db ); $gameUUID = (string) clean_str( $_GET['gameUUID'] ); $tech = (string) clean_str( $_GET['tech'] ); $factionCount = 0; if ( isset( $_GET['factionCount'] ) ) { $factionCount = (string) clean_str( $_GET['factionCount'] ); } $framesPlayed = 0; if ( isset( $_GET['framesPlayed'] ) ) { $framesPlayed = (string) clean_str( $_GET['framesPlayed'] ); } $maxConcurrentUnitCount = 0; if ( isset( $_GET['maxConcurrentUnitCount'] ) ) { $maxConcurrentUnitCount = (string) clean_str( $_GET['maxConcurrentUnitCount'] ); } $totalEndGameConcurrentUnitCount = 0; if ( isset( $_GET['totalEndGameConcurrentUnitCount'] ) ) { $totalEndGameConcurrentUnitCount = (string) clean_str( $_GET['totalEndGameConcurrentUnitCount'] ); } $isHeadlessServer = 0; if ( isset( $_GET['isHeadlessServer'] ) ) { $isHeadlessServer = (string) clean_str( $_GET['isHeadlessServer'] ); } //echo '#1 ' . $whereClause; //echo '#2 ' . $statsCount[0]; if ( $statsCount[0] > 0 ) // this game is contained in the database { // update database info on this game server; no checks are performed $result = mysql_query( 'UPDATE glestgamestats SET ' . 'gameUUID=\'' . mysql_real_escape_string( $gameUUID ) . '\', ' . 'tech=\'' . mysql_real_escape_string( $tech ) . '\', ' . 'factionCount=\'' . mysql_real_escape_string( $factionCount ) . '\', ' . 'framesPlayed=\'' . mysql_real_escape_string( $framesPlayed ) . '\', ' . 'framesToCalculatePlaytime=\'' . mysql_real_escape_string( $framesToCalculatePlaytime ) . '\', ' . 'maxConcurrentUnitCount=\'' . mysql_real_escape_string( $maxConcurrentUnitCount ) . '\', ' . 'totalEndGameConcurrentUnitCount=\'' . mysql_real_escape_string( $totalEndGameConcurrentUnitCount ) . '\', ' . 'isHeadlessServer=\'' . mysql_real_escape_string( $isHeadlessServer ) . '\', ' . 'lasttime=' . 'now()' . ' ' . 'WHERE ' . $whereClause . ';'); if (!$result) { die('part 1a: Invalid query: ' . mysql_error()); } echo 'OK1a'; } else // this game server is not listed in the database, yet { // check whether this game server is available from the Internet; if it is, add it to the database // update database info on this game server; no checks are performed $result = mysql_query( 'INSERT INTO glestgamestats SET ' . 'gameUUID=\'' . mysql_real_escape_string( $gameUUID ) . '\', ' . 'tech=\'' . mysql_real_escape_string( $tech ) . '\', ' . 'factionCount=\'' . mysql_real_escape_string( $factionCount ) . '\', ' . 'framesPlayed=\'' . mysql_real_escape_string( $framesPlayed ) . '\', ' . 'framesToCalculatePlaytime=\'' . mysql_real_escape_string( $framesToCalculatePlaytime ) . '\', ' . 'maxConcurrentUnitCount=\'' . mysql_real_escape_string( $maxConcurrentUnitCount ) . '\', ' . 'totalEndGameConcurrentUnitCount=\'' . mysql_real_escape_string( $totalEndGameConcurrentUnitCount ) . '\', ' . 'isHeadlessServer=\'' . mysql_real_escape_string( $isHeadlessServer ) . '\';'); if (!$result) { die('part 2a: Invalid query: ' . mysql_error()); } echo 'OK2b'; } for ( $factionNumber = 0; $factionNumber < $factionCount ; $factionNumber++) { // Player details $factionIndex = 0; if ( isset( $_GET['factionIndex_' . $factionNumber ] ) ) { $factionIndex = clean_str( $_GET['factionIndex_' . $factionNumber] ); } $controlType = 0; if ( isset( $_GET['controlType_' . $factionNumber] ) ) { $controlType = clean_str( $_GET['controlType_' . $factionNumber] ); } $resourceMultiplier = 0; if ( isset( $_GET['resourceMultiplier_' . $factionNumber] ) ) { $resourceMultiplier = clean_str( $_GET['resourceMultiplier_' . $factionNumber] ); } $factionTypeName = ""; if ( isset( $_GET['factionTypeName_' . $factionNumber] ) ) { $factionTypeName = (string) clean_str( $_GET['factionTypeName_' . $factionNumber] ); } $personalityType = 0; if ( isset( $_GET['personalityType_' . $factionNumber] ) ) { $personalityType = clean_str( $_GET['personalityType_' . $factionNumber] ); } $teamIndex = 0; if ( isset( $_GET['teamIndex_' . $factionNumber] ) ) { $teamIndex = clean_str( $_GET['teamIndex_' . $factionNumber] ); } $wonGame = 0; if ( isset( $_GET['wonGame_' . $factionNumber] ) ) { $wonGame = clean_str( $_GET['wonGame_' . $factionNumber] ); } $killCount = 0; if ( isset( $_GET['killCount_' . $factionNumber] ) ) { $killCount = clean_str( $_GET['killCount_' . $factionNumber] ); } $enemyKillCount = 0; if ( isset( $_GET['enemyKillCount_' . $factionNumber] ) ) { $enemyKillCount = clean_str( $_GET['enemyKillCount_' . $factionNumber] ); } $deathCount = 0; if ( isset( $_GET['deathCount_' . $factionNumber] ) ) { $deathCount = clean_str( $_GET['deathCount_' . $factionNumber] ); } $unitsProducedCount = 0; if ( isset( $_GET['unitsProducedCount_' . $factionNumber] ) ) { $unitsProducedCount = clean_str( $_GET['unitsProducedCount_' . $factionNumber] ); } $resourceHarvestedCount = 0; if ( isset( $_GET['resourceHarvestedCount_' . $factionNumber] ) ) { $resourceHarvestedCount = clean_str( $_GET['resourceHarvestedCount_' . $factionNumber] ); } $playerName = ""; if ( isset( $_GET['playerName_' . $factionNumber] ) ) { $playerName = (string) clean_str( $_GET['playerName_' . $factionNumber] ); } $quitBeforeGameEnd = 0; if ( isset( $_GET['quitBeforeGameEnd_' . $factionNumber] ) ) { $quitBeforeGameEnd = clean_str( $_GET['quitBeforeGameEnd_' . $factionNumber] ); } $quitTime = 0; if ( isset( $_GET['quitTime_' . $factionNumber] ) ) { $quitTime = clean_str( $_GET['quitTime_' . $factionNumber] ); } $playerUUID = ""; if ( isset( $_GET['playerUUID_' . $factionNumber] ) ) { $playerUUID = (string) clean_str( $_GET['playerUUID_' . $factionNumber] ); } $playerPlatform = ""; if ( isset( $_GET['platform_' . $factionNumber] ) ) { $playerPlatform = (string) clean_str( $_GET['platform_' . $factionNumber] ); } if($player_statsCount[0] > 0) { $result = mysql_query( 'UPDATE glestgameplayerstats SET ' . 'gameUUID=\'' . mysql_real_escape_string( $gameUUID ) . '\', ' . 'factionIndex=' . $factionIndex . ', ' . 'controlType=' . $controlType . ', ' . 'resourceMultiplier=' . $resourceMultiplier . ', ' . 'factionTypeName=\'' . mysql_real_escape_string( $factionTypeName ) . '\', ' . 'personalityType=' . $personalityType . ', ' . 'teamIndex=' . $teamIndex . ', ' . 'wonGame=' . $wonGame . ', ' . 'killCount=' . $killCount . ', ' . 'enemyKillCount=' . $enemyKillCount . ', ' . 'deathCount=' . $deathCount . ', ' . 'unitsProducedCount=' . $unitsProducedCount . ', ' . 'resourceHarvestedCount=' . $resourceHarvestedCount . ', ' . 'playerName=\'' . mysql_real_escape_string( $playerName ) . '\', ' . 'quitBeforeGameEnd=' . $quitBeforeGameEnd . ', ' . 'quitTime=' . $quitTime . ', ' . 'playerUUID=\'' . mysql_real_escape_string( $playerUUID ) . '\', ' . 'platform=\'' . mysql_real_escape_string( $playerPlatform ) . '\', ' . 'lasttime=' . 'now()' . ' ' . 'WHERE ' . $whereClause . ' AND factionIndex = ' . $factionIndex . ';'); if (!$result) { die('part 1b: Invalid query: ' . mysql_error()); } //echo 'OK1 $factionNumber = ' . $factionNumber; echo 'OK1b' . $factionNumber; } else { $result = mysql_query( 'INSERT INTO glestgameplayerstats SET ' . 'gameUUID=\'' . mysql_real_escape_string( $gameUUID ) . '\', ' . 'factionIndex=' . $factionIndex . ', ' . 'controlType=' . $controlType . ', ' . 'resourceMultiplier=' . $resourceMultiplier . ', ' . 'factionTypeName=\'' . mysql_real_escape_string( $factionTypeName ) . '\', ' . 'personalityType=' . $personalityType . ', ' . 'teamIndex=' . $teamIndex . ', ' . 'wonGame=' . $wonGame . ', ' . 'killCount=' . $killCount . ', ' . 'enemyKillCount=' . $enemyKillCount . ', ' . 'deathCount=' . $deathCount . ', ' . 'unitsProducedCount=' . $unitsProducedCount . ', ' . 'resourceHarvestedCount=' . $resourceHarvestedCount . ', ' . 'playerName=\'' . mysql_real_escape_string( $playerName ) . '\', ' . 'quitBeforeGameEnd=' . $quitBeforeGameEnd . ', ' . 'quitTime=' . $quitTime . ', ' . 'platform=\'' . mysql_real_escape_string( $playerPlatform ) . '\', ' . 'playerUUID=\'' . mysql_real_escape_string( $playerUUID ) . '\';'); if (!$result) { die('part 2b: Invalid query: ' . mysql_error()); } //echo 'OK2 $factionNumber = ' . $factionNumber; echo 'OK2b' . $factionNumber; } } db_disconnect( DB_LINK ); } ?>