Esempio n. 1
0
function check_level($advance)
{
    global $CONST;
    if (!$_SESSION["advance-level"] || $advance != $_SESSION["prev-salt"] || $_SESSION["prev-salt"] === "") {
        return NULL;
    }
    global $db_connection;
    $query = "SELECT COUNT(*) FROM `Questions-{$_SESSION["username"]}` AS `Q-U` " . "WHERE `Q-U`.`Question Number` LIKE '{$_SESSION["level"]}_'; ";
    $query = mysqli_fetch_array(mysqli_query($db_connection, $query));
    if (intval($query["COUNT(*)"]) < 6) {
        return NULL;
    }
    $query = "SELECT COUNT(*) FROM `Questions-{$_SESSION["username"]}` AS `Q-U` " . "WHERE `Q-U`.`Time Opened` != '-1' AND `Q-U`.`Time Answered` = '-1' " . "AND `Q-U`.`Question Number` LIKE '{$_SESSION["level"]}_'; ";
    $query = mysqli_fetch_array(mysqli_query($db_connection, $query));
    $query_count = intval($query["COUNT(*)"]);
    if ($query_count > 0) {
        push_increase("Unsolved Question Penalty", -$query_count * $CONST["question-penalty"]);
    }
    $_SESSION["question"] = "";
    $_SESSION["advance-level"] = FALSE;
    $_SESSION["level"]++;
    $_SESSION["level-score"] = 0;
    load_constants();
    push_increase("Level Advanced", $CONST["advance-bonus"]);
    sync_scores();
    $query = "UPDATE `ContestantsData` " . "SET `Level` = '{$_SESSION["level"]}' " . "WHERE `Username` = '{$_SESSION["username"]}';";
    mysqli_query($db_connection, $query);
    return "Level Advanced";
}
Esempio n. 2
0
function check_answer($ans)
{
    $quesFor = $_SESSION["question"];
    $browserOfuser = NULL;
    global $db_connection;
    global $CONST;
    $query = "SELECT `Q`.*,`Q-U`.* FROM `Questions` AS `Q` " . "LEFT JOIN `Questions-{$_SESSION["username"]}` AS `Q-U` ON `Q`.`Question ID` = `Q-U`.`Question ID` " . "LEFT JOIN `QuestionSolves` AS `S` ON `Q`.`Question ID` = `S`.`Question ID` " . "WHERE `Q`.`Question ID` = '{$_SESSION["question"]}'";
    $query = mysqli_fetch_array(mysqli_query($db_connection, $query));
    /////////////////////////
    if ($query["Time Answered"] != "-1") {
        $_SESSION["question"] = "";
        mysqli_close($db_connection);
        header("Location: ./profile.php");
        die;
    }
    ////////////////////////////////
    $query["Attempts"]++;
    $query["Check Answer"] = $query["Answer Regular"];
    if (!filter_var($ans, FILTER_VALIDATE_REGEXP, array("options" => array('regexp' => '/^[a-z0-9]+$/')))) {
        return "Ooops! Wrong Answer! Keep Trying...";
    }
    if ($query["Check Answer"] != $ans) {
        $result = "UPDATE `Questions-{$_SESSION["username"]}` " . "SET `Attempts` = '{$query["Attempts"]}' " . "WHERE `Question ID` = '{$_SESSION["question"]}' ";
        mysqli_query($db_connection, $result);
        return "Ooops! Wrong Answer! Keep Trying...";
    }
    $timeAnsw = intval((time() + 59) / 60);
    $incr = intval($CONST["question-score"]);
    push_increase("Question Answered", $incr);
    if ($_SESSION["advance-level"]) {
        push_increase("Bonus Question", $CONST["bonus-quest"]);
        $incr += $CONST["bonus-quest"];
    }
    sync_scores();
    $result = "UPDATE `Questions-{$_SESSION["username"]}` " . "SET `Time Answered`='{$timeAnsw}', `Obtained Score`='{$incr}', `Attempts`='{$query["Attempts"]}' " . "WHERE `Question ID` = '{$_SESSION["question"]}';";
    mysqli_query($db_connection, $result);
    $query = "SELECT COUNT(*) FROM `Questions-{$_SESSION["username"]}` AS `Q-U` " . "WHERE `Q-U`.`Question Number` LIKE '{$_SESSION["level"]}_'" . "AND `Q-U`.`Time Answered` != '-1' ";
    $query = mysqli_fetch_array(mysqli_query($db_connection, $query));
    if (intval($query["COUNT(*)"]) >= $CONST["advance"]) {
        $_SESSION["advance-level"] = TRUE;
    }
    $query = "SELECT * FROM `QuestionSolves` AS `Q-U` " . "WHERE `Q-U`.`Question ID` = '{$_SESSION["question"]}'";
    $query = mysqli_fetch_array(mysqli_query($db_connection, $query));
    $query["Solves"]++;
    if ($query["First Solve"] == -1) {
        $query["First Solve"] = $timeAnsw;
    }
    $result = "UPDATE `QuestionSolves` " . "SET `Solves` = '{$query["Solves"]}', `First Solve`='{$query["First Solve"]}' " . "WHERE `Question ID` = '{$_SESSION["question"]}';";
    mysqli_query($db_connection, $result);
    $_SESSION["question"] = "";
    mysqli_close($db_connection);
    header("Location: ./profile.php");
    die;
}
Esempio n. 3
0
function treasure_chest_located($i)
{
    require_once './support/dbcon.php';
    global $db_connection;
    global $_SESSION;
    $value = 1 << $i;
    $_SESSION["tchests"] = $_SESSION["tchests"] | $value;
    $query = "UPDATE `ContestantsData` SET `TChests Unlocked`= '{$_SESSION["tchests"]}' WHERE " . "`Username` = '{$_SESSION["username"]}'";
    mysqli_query($db_connection, $query);
    $score = (int) ($_SESSION["total-score"] / 10);
    push_increase("Treasure Chest UNLOCKED!!!", $score, FALSE);
    sync_scores();
}