commit d4f95b998cbda7f1db3e8b411a35f2cfd538e211 Author: jiangsir <1463310682@qq.com> Date: Wed Sep 11 21:56:05 2024 +0800 上传文件至 src diff --git a/src/index.php b/src/index.php new file mode 100644 index 0000000..f313bf1 --- /dev/null +++ b/src/index.php @@ -0,0 +1,103 @@ += 10) { + echo "Congratulations! You are clever. Here is your flag: FLAGFLAGFLAG"; + exit(); +} + +function generateQuestion() { + $nums = []; + $operators = ['+', '-', '*', '/']; + + for ($i = 0; $i < 9; $i++) { + $nums[] = rand(1000000, 99999999); + } + + $expression = "{$nums[0]}"; + for ($i = 1; $i < count($nums); $i++) { + $operator = $operators[array_rand($operators)]; + $expression .= " $operator {$nums[$i]}"; + } + + // È·±£³ýÊý²»Îª0 + if (strpos($expression, '/ 0') !== false) { + return generateQuestion(); // ÖØÐÂÉú³ÉÌâÄ¿ + } + + // ¼ÆËã´ð°¸ + try { + $answer = eval("return ($expression);"); + if (is_float($answer)) { + $answer = round($answer, 2); + } + } catch (DivisionByZeroError $e) { + return generateQuestion(); // ´¦Àí³ýÒÔ0µÄÇé¿ö + } + + $_SESSION['answer'] = $answer; + return $expression; +} + +if ($_SERVER['REQUEST_METHOD'] == 'POST') { + if (isset($_POST['hiahia'])) { + $userAnswer = trim($_POST['hiahia']); + $correctAnswer = $_SESSION['answer']; + + // ´¦Àí¸¡µãÊý±È½Ï + if (abs(floatval($userAnswer) - floatval($correctAnswer)) < 0.01) { + $_SESSION['correct_count'] += 1; + if ($_SESSION['correct_count'] >= 10) { + echo "Congratulations! You are clever. Here is your flag: FLAGFLAGFLAG"; + exit(); + } else { + $message = "Correct! Keep going! You have answered {$_SESSION['correct_count']} correctly."; + } + } else { + $_SESSION['correct_count'] = 0; + $message = "Wrong answer or time out! Try again."; + } + } +} + +$question = generateQuestion(); + +?> + + + + + + + + Advanced Math Challenge + + + + + +

Give me your answer for 3 seconds:

+

?

+ + +

+ + +
+ + +
+ + + + \ No newline at end of file