Skip to content
Advertisement

PHP Guessing Number

This is a random number guessing game between 1 and 100.

I am stuck on the guessing number part. The code doesn’t work, whatever number I put it just show me the message “Your number is lower!”.I need help.

This is what I have so far.

<?php

$x   = rand(1, 100);
$num = '';

if (isset($_POST['submit'])) {


        if ($num < $x) 
        {
            echo " Your number is lower! <br />";
        } elseif ($num > $x) 
            {
            echo " Your number is higher! <br />";
        } elseif ($num == $x) 
            {
            echo " Congratulations! You guessed the hidden number. <br />";
        } else 
            {
            echo " You never set a number! <br />";
        }




}
?>
<p>
<form action="" method="post">
<input type="text" name="num">
<button type="submit" name="submit">Guess</button>
<button type="reset" name="Reset">Reset</button>
</form>
</p>

Advertisement

Answer

You will always get lower because There isn’t any value inside you $num.So, You need to assigning $num

 <?php

    $x   = rand(1, 100);
    $num = '';

    if (isset($_POST['submit'])) {
     $num = $_POST['num']; // Add this to set value for $num variable
            if ($num < $x) 
            {
                echo " Your number is lower! <br />";
            } elseif ($num > $x) 
                {
                echo " Your number is higher! <br />";
            } elseif ($num == $x) 
                {
                echo " Congratulations! You guessed the hidden number. <br />";
            } else 
                {
                echo " You never set a number! <br />";
            }
    }
    ?>
User contributions licensed under: CC BY-SA
6 People found this is helpful
Advertisement