Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我想为我的计算机科学课做一个骰子游戏_Php_Html - Fatal编程技术网

Php 我想为我的计算机科学课做一个骰子游戏

Php 我想为我的计算机科学课做一个骰子游戏,php,html,Php,Html,我的目标是使用下拉列表获取用户输入,这样当用户提交他们的“猜测”时,页面将重新加载随机骰子生成器并检查用户是否正确地“猜测”。我把我的代码放在下面,任何帮助都将不胜感激 <body> <h1>Dice Game!</h1><br> <hr size="2" /> <form name="form1" action="activity-dice-game.php" method="POST">

我的目标是使用下拉列表获取用户输入,这样当用户提交他们的“猜测”时,页面将重新加载随机骰子生成器并检查用户是否正确地“猜测”。我把我的代码放在下面,任何帮助都将不胜感激

    <body>
<h1>Dice Game!</h1><br>

    <hr size="2" />        
<form name="form1" action="activity-dice-game.php" method="POST">
           <select name="number" class="fancyInput">
        <option value="">Choose a Number</option>      
        <option value="one">1</option>
        <option value="two">2</option>
        <option value="three">3</option>
        <option value="four">4</option>
        <option value="five">5</option>
        <option value="six">6</option>
        </select></br><br><br>
        <input type="submit" value="Submit" name="subBtn" class="btn"></input>
</form>

    <?php
if ($_POST['subBtn'])

$number = $_POST['number'];
$roll = rand(1, 6);

    if ($number == "")
    echo "<p class='error'>Choose a Number!</p>";

    else if ($number == $roll) {
    echo "<p>Good Guess!</p><br>";
    echo  "<img src=http://bit.do/IcsDice" . $roll . " .\" title=\"dice\">";

    } else if ($number != $roll) {
    echo "<p>You guessed incorrectly, Too Bad.</p><br>";
    echo  "<img src=http://bit.do/IcsDice" . $roll . " .\" title=\"dice\">";

    }

?>

掷骰子游戏




以下是您的简单解决方案:

<?php
    $number     = isset($_POST['number']) ? $_POST['number'] : null;
    $roll       = rand(1, 6);
    $message    = "";

    if (!$number){
        $message.= "<p class='error'>Choose a Number!</p>";
    }else if($number == $roll){
        $message = "<p>Good Guess!</p><br>";
        $message.= "<img src='http://bit.do/IcsDice{$roll}' title='dice'>";
    }else{
        $message = "<p>You guessed incorrectly, Too Bad.</p><br>";
        $message.= "<img src='http://bit.do/IcsDice{$roll}' title='dice'>";
    }
?>

<html>
    <head>
        <script type="text/javascript">
            function submitGuessForm(sender){
                var guessForm       = document.forms[0]; //THE FIRST... & ONLY FORM IN THE PAGE...
                var selectedOption  = sender.options[sender.selectedIndex].value;

                if(!selectedOption || selectedOption == ''){
                    alert("Please, guess a Number to play the game.");
                }else{
                    guessForm.submit();
                }
                return false;
            }
        </script>
    </head>
    <body>
        <h1>Dice Game!</h1><br><br>

        <hr size="2" /><br><br>
        <p class="error-box"><strong><?php echo $message; ?></strong></p>
        <!-- SUBMIT FORM TO THE SAME SCRIPT -->
        <form name="form1" action="" method="POST"> <!-- activity-dice-game.php -->
            <label for="die_choice">
                HOW INTUITIVE ARE YOU? GUESS !!!<br />
                <select name="number" id="die_choice" class="fancyInput" onchange="submitGuessForm(this);">
                    <option value="">Choose a Number</option>
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                    <option value="4">4</option>
                    <option value="5">5</option>
                    <option value="6">6</option>
                </select>
            </label></br><br><br>
            <!-- NO NEED FOR THE SUBMIT BUTTON SINCE YOU CAN DIRECTLY SUBMIT THE FORM WHEN AN OPTION IS SELECTED - WITH JAVASCRIPT THOUGH -->
            <!-- <input type="submit" value="Submit" name="subBtn" class="btn"></input> -->
        </form>
    </body>
</html>

你知道如果($roll==$number)你可以做
对吗?问题到底是什么?如何做的更有效率?请看@JonStirling评论。此外,
如果($\u POST['subBtn'])
没有打开的括号,我尝试了,但没有成功。“没有成功”,确切地说是什么不成功,请显示代码。什么错误消息?你期望的是什么?你得到的是什么?等等。怎么不起作用?发生了什么事?