Php 在特定尝试后显示消息

Php 在特定尝试后显示消息,php,session,Php,Session,一、 我只是在学习PHP,作为我自己的一个项目,我正在开发一个小游戏,用户可以猜1到100之间的数字。 如果他是对的,那么它显示的是相同的,或者它显示的是答案。 现在,我将此限制为三次尝试,我希望用户在第三次尝试后看到一条消息“您的三次尝试已结束”。 还有一个“重试”按钮,它会破坏会话并允许他重新启动游戏。请帮我做同样的事情 代码如下: <?php $rand= rand(1,100); $guess=$_POST['guess']; $submit=$_POST['submit'];

一、 我只是在学习PHP,作为我自己的一个项目,我正在开发一个小游戏,用户可以猜1到100之间的数字。 如果他是对的,那么它显示的是相同的,或者它显示的是答案。 现在,我将此限制为三次尝试,我希望用户在第三次尝试后看到一条消息“您的三次尝试已结束”。 还有一个“重试”按钮,它会破坏会话并允许他重新启动游戏。请帮我做同样的事情

代码如下:

<?php

$rand= rand(1,100);

$guess=$_POST['guess'];
$submit=$_POST['submit'];
session_start();

if(isset($submit)) {

if (!isset($_SESSION["attempts"])) $_SESSION["attempts"] = 0;

if ($_SESSION["attempts"] < 3) {

    if($guess<1 ||$guess>100) {
        echo "your guess must be a number between 1 and 100";
    }
    elseif($guess!=$rand)
    {
        echo "Incorrect,the correct answer is".$rand;
        $_SESSION["attempts"] = $_SESSION["attempts"] + 1;
    }
    else
    {
        echo "That is correct!";
    }
}

}
else
{
    unset($_SESSION["attempts"]);
    include_once('game.php');
}

?>

如果有会话,请不要在每次提交时取消设置会话。这样,您就永远无法计算尝试次数,因为它们总是由未设置项重置

这是您的代码byt,注释掉了unset,并添加了一条“3次尝试”消息

$guess=$_POST['guess']$提交=$_POST['submit'];会话_start()

if(isset($submit)){if(!isset($\会话[“尝试”])) $\会话[“尝试”]=0

如果($\会话[“尝试”]<3){

如果($guess100){echo“您的猜测必须是介于 1和100”

}elseif($guess!=$rand){echo“不正确,答案正确 是“$rand;$”会话[“尝试”]=$”会话[“尝试”]+1

}

否则{echo“那是正确的!”

}

}否则{

回声“你的3次尝试都成功了”

}

}否则{

//取消设置($_会话[“尝试]);包含一次('game.php')

}


你做了这么多却不知道怎么加一行

if ($_SESSION["attempts"] < 3) {
    ...
} else {
    echo '3 tries are over, game over.';
    session_destroy();
    ...
}
if($\u会话[“尝试”]<3){
...
}否则{
echo“三次尝试结束,游戏结束”;
会话_destroy();
...
}

您的问题是什么?没有测试代码,但看起来很好。我不确定在第三次尝试后如何显示消息“您的3次尝试已结束”。还有一个“重试”按钮,它会破坏会话并允许他重新启动gameHenkealg,谢谢你的回复。它工作得很好。但是,我如何添加一个“重试”按钮以及“你的3次尝试都成功了”按钮?我想出来了。添加了一个指向上一个文件的链接以及一个“session_destroy()”谢谢。@user1595112很高兴听到你让它工作了。祝你的比赛好运。:)Dainis,这只是我学习PHP的第八天。我是一名网页设计师,也是一名兼职教师——我在网上读到了类似的游戏,并决定制作一款自己的游戏,可以添加到学校的网站上。如果您觉得我太无知,我很抱歉。我也尝试了您的方法-但是,它不只是显示“3次尝试结束,游戏结束。”-它显示一条消息,如“不正确,正确答案是94 3次尝试结束,游戏结束。”并允许用户继续玩游戏。@user1595112 m8,也做一些工作,我们刚刚向您展示了方法,没有为您编写完整的代码。