Doron Mor
Doron Mor

Reputation: 71

PHP - counter error using $_SESSION

The $count++; does not working while i am using if(!isset($_SESSION["rand"]))...

I am building a number guessing game.

$numOfGess=4;
$min=1;
$max=10;

if(!isset($_SESSION["rand"])){
    $_SESSION["rand"] = rand($min, $max);
    $count=0;
}

if(isset($_POST["numGuess"])){
$numGuess = $_REQUEST["numGuess"];

    if($numGuess != $_SESSION["rand"]) {

        //Validation
        if($numGuess < $min || $numGuess > $max) {
            echo"Your number must be between 1 to 10 !";
        }

        //Number is Small
        if($numGuess < $_SESSION["rand"]) {
            echo "too small...";
            $count++;
        }

        //Number is Big
        if($numGuess > $_SESSION["rand"]) {
            echo "too big...";
            $count++;
        }

        if($count==$numOfGess) {
            echo"Game Over!";
            unset($_SESSION["rand"]);
        }
    }

    else {
        echo"You got it! (in your last chance)";
        unset($_SESSION["rand"]);
    }
}

Upvotes: 0

Views: 207

Answers (3)

robinp7720
robinp7720

Reputation: 443

Your forgetting

Session_start()

to start/resume the session

Upvotes: 0

michaelp
michaelp

Reputation: 363

Store count in your session variable. What happens if $_SESSION['rand'] is set? How does it know what the previous count was?

Upvotes: 0

Alberto
Alberto

Reputation: 878

You should store the count variable as a session variable as well, otherwise it gets reset with every request. So, just replace $count with $_SESSION['count'] and it should work.

Upvotes: 2

Related Questions