function scoreBrackets($db, $master_data, $loserMap, $roundMap, $seedMap, $scoringType) { $custompoints = getScoringArray($db, $scoringType); $query = "SELECT * FROM `brackets`"; $result = mysql_query($query, $db); while ($user_bracket = mysql_fetch_array($result, MYSQL_ASSOC)) { $score = 0; $bestScore = 0; for ($j = 1; $j < 64; ++$j) { // calculate actual score if ($user_bracket[$j] == $master_data[$j] && $user_bracket[$j] != "") { $seedvalue = $seedMap[$master_data[$j]]; $score += $custompoints[$seedvalue][$roundMap[$j]]; } // calcualte best score if (($user_bracket[$j] == $master_data[$j] || $loserMap[$user_bracket[$j]] == false) && $user_bracket[$j] != "") { $seedvalue = $seedMap[$user_bracket[$j]]; $bestScore += $custompoints[$seedvalue][$roundMap[$j]]; } } if ($user_bracket['paid'] > 0) { $user_bracket['name'] = mysql_real_escape_string($user_bracket['name']); $score_query = "INSERT INTO `scores` () VALUES ('{$user_bracket['id']}','{$user_bracket['name']}','{$score}','{$scoringType}')"; mysql_query($score_query, $db) or die(mysql_error()); $score_query = "INSERT INTO `best_scores` () VALUES ('{$user_bracket['id']}','{$user_bracket['name']}','{$bestScore}','{$scoringType}')"; mysql_query($score_query, $db) or die(mysql_error()); } } }
$i = 1; $rankCounter = 0; $prevScore = -1; while ($user = mysql_fetch_array($result)) { // Print out the contents of each row into a table if ($user['score'] != $prevScore) { $rankCounter = $i; } if ($user['id'] == $id) { $rank = $rankCounter; break; } $prevScore = $user['score']; $i++; } $scoring = getScoringArray($db, 'main'); $roundMap = getRoundMap(); for ($j = 1; $j < 64; $j++) { $gameValue = $scoring[$seedMap[$picks[$j]]][$roundMap[$j]]; $gameValueStr = " <span class=\"gamevalue\">(" . $gameValue . ")</span>"; $pickSeed = "<span class=\"gamevalue\">" . $seedMap[$picks[$j]] . ". </span>"; $nextGameValue = $scoring[$seedMap[$picks[$j]]][$roundMap[$j] + 1]; $nextGameValueStr = " onmouseover=\"return displayNextRoundWinValue('" . $nextGameValue . "');\" onmouseout=\"return clearStatus();\""; if ($master_data[$j] != NULL) { if ($picks[$j] != $master_data[$j]) { $correctSeed = "<span class=\"gamevalue\">" . $seedMap[$master_data[$j]] . ". </span>"; $correctValue = $scoring[$seedMap[$master_data[$j]]][$roundMap[$j]]; $correctValueStr = " <span class=\"gamevalue\">(" . $correctValue . ")</span>"; $nextCorrectGameValue = $scoring[$seedMap[$master_data[$j]]][$roundMap[$j] + 1]; $nextCorrectGameValueStr = " onmouseover=\"return displayNextRoundWinValue('" . $nextCorrectGameValue . "');\""; $picks[$j] = "<span class=\"strike\">" . $pickSeed . $picks[$j] . $gameValueStr;
} } eliminateImpossibleEndGames($master_data, $db); $activeCountQuery = "SELECT count(id) count FROM `end_games` where `round`='7' and `eliminated`=false"; // winners $activeCount = mysql_query($activeCountQuery, $db); $activeCount = mysql_fetch_array($activeCount, MYSQL_ASSOC); $activeCount = $activeCount['count']; if ($truncate || $activeCount != pow(2, $gamesLeft)) { $query = "TRUNCATE TABLE `end_games` "; mysql_query($query, $db); enumerateRound(49, 56, array(), $master_data, $childGraph, $db, 4); enumerateLaterRound(57, 60, 4, $master_data, $db, $childGraph); enumerateLaterRound(61, 62, 5, $master_data, $db, $childGraph); enumerateLaterRound(63, 63, 6, $master_data, $db, $childGraph); $custompoints = getScoringArray($db, 'main'); scoreOutcomes(7, $master_data, $custompoints, $db, "path_to_victory"); } $query = "TRUNCATE TABLE `probability_of_winning`"; mysql_query($query, $db); $brackets = "SELECT id FROM `brackets` where paid<>'0'"; $brackets = mysql_query($brackets, $db) or die(mysql_error()); $numBracketsQuery = "SELECT count(id) count FROM `brackets` where paid<>'0'"; // winners $numBrackets = mysql_query($numBracketsQuery, $db); $numBrackets = mysql_fetch_array($numBrackets, MYSQL_ASSOC); $numBrackets = $numBrackets['count']; for ($scoreRank = 1; $scoreRank <= $maxScoreRanks; $scoreRank++) { updateProbabilities($roundMap, $seedMap, $childGraph, $scoring, $master_data, $scoreRank, $db); } // Also, do last place calc...
<td width="314"><div align="center"> <strong>NAME</strong></div></td> <td width="80"> <p align="center"><strong>SCORE</strong></p></td> </tr> <?php // if all ARE filled in, show a ranking if ($_GET['scoring_type'] == null) { $scoringType = 'main'; } else { $scoringType = $_GET['scoring_type']; } $custompoints = getScoringArray($db, $scoringType); $seedMap = getSeedMap($db); $roundMap = getRoundMap(); $master_query = "SELECT * FROM `master` WHERE `id`=2"; $master_data = mysql_query($master_query, $db); $master_data = mysql_fetch_array($master_data); $query = "SELECT * FROM `brackets`"; $result = mysql_query($query, $db); $i = 0; while ($user_bracket = mysql_fetch_array($result, MYSQL_ASSOC)) { $score = 0; for ($j = 1; $j < 49; ++$j) { if ($user_bracket[$j] == $master_data[$j] && $user_bracket[$j] != "") { $seedvalue = $seedMap[$master_data[$j]]; $score += $custompoints[$seedvalue][$roundMap[$j]]; }