将所有猜出的字母存储在子手游戏中

时间:2019-06-12 12:55:30

标签: php mysql

im使用php和sql编写子手游戏。我快完成了,当我尝试存储所有猜出的字母然后回显它们时,还有一些最终问题。以下代码仅显示游戏中的两个最新猜测,而不是全部(最多5个猜测)。有人可以帮我吗?

numFailed Guess变量可以正常工作,显示所有猜测,但是当我尝试回显那些猜测时,只会显示最新的猜测。

我在考虑数组解决方案,有什么想法吗?

这是我的代码...

    //if word is incorrect 
    if($correct!=1){
    $numFailedGuess++;
    $_SESSION['numFailedGuess']= $numFailedGuess;


    //entry to fail guesses
    if(!isset($S_SESSION['incorrectGuesses'])){
        $_SESSION['incorrectGuesses']="";
    }

    $_SESSION['incorrectGuesses'].=$alpha. ", ";



    $incorrectGuesses=$incorrectGuesses.$_SESSION['incorrectGuesses'];


    }else{...

2 个答案:

答案 0 :(得分:1)

//entry to fail guesses
if(!isset($S_SESSION['incorrectGuesses'])){
    $_SESSION['incorrectGuesses']="";
}

这是错误的,应该为$_SESSION。您输入错误,导致您总是将会话重置为空白,因为$S_SESSION不存在

答案 1 :(得分:-1)

首先,您需要调用session_start()函数,因此可以开始使用$ _SESSION全局变量。之后,您可以将值存储在数组中,使用它之后,可以将其存储在会话中。
我假设您正在使用$ _POST从用户那里获取值。

session_start();
if(!isset($_SESSION['incorrectGuesses']))
   $arrayGuess = [];
else
   $arrayGuess = $_SESSION['incorrectGuesses'];
if(isset($_POST['guess']))
{
   array_push($arrayGuess, $_POST['guess']);
}
$_SESSION['incorrectGuesses'] = $arrayGuess;
print_r($arrayGuess);