0

我有一个刽子手游戏。我的问题是,当他们进入胜利屏幕时,他们可以无限刷新它,每次刷新都会增加他们的胜利数量(如果他们输了,就会增加损失),因为它会检查单词是否完整,是否完整,并提高他们的分数.

我现在制作了一个 SESSION 变量来判断他们是否赢了。如果有,它会重置游戏。

我的问题是,当他们使用 URL 中的 GET 请求刷新时(我如何猜测),例如...index.php?guess=G游戏将刷新 G 被猜测。我认为 Location 设置为 index.php 的标头会摆脱 GET 请求。

这是我的检测代码:

    if (isset($_SESSION["won"]) && $_SESSION["won"]) {
        reset_game();
    }
    else if (isset($_SESSION["lost"]) && $_SESSION["lost"]) {
        reset_game();
    }

reset_game()功能:

    function reset_game() {
        $_SESSION["word"] = generate_word("dictionary.txt");
        $_SESSION["word-progress"] = turn_to_underscores($_SESSION["word"]);
        $_SESSION["chances-left"] = 9;
        $_SESSION["guesses"] = array();
        $_SESSION["incorrect-guesses"] = array();

        header('Location: index.php');
    }

为什么这不起作用?

4

1 回答 1

1

我相信 header("Location: index.php"); 将从 URL 中删除所有 get 参数。

我认为您需要检查您的应用程序是否确实调用了该函数

于 2013-02-20T05:50:00.067 回答