PHP调试猜测游戏:Mastermind以及我如何用两个玩家解决它

时间:2017-04-11 13:05:53

标签: php html

概述:

1这是什么

2我有什么问题

3什么是烦扰

1。这是什么

这是关于编程一些小游戏。我认为它也被称为策划者。游戏有以下规则。

  • 有两名球员

  • 首先是首发玩家输入5个数字

  • 然后第二个玩家输入5个数字来猜测数字 第一名球员

  • 程序必须回显第二个玩家的数量 正确的地方以及正确猜到的数字。

  • 程序必须运行fiew次,因为玩家二有几个 试

  • 我想为两个玩家使用一个公式,如果可能的话,也就是一个 提交按钮

  • 我不想知道这个程序是如何整体编码的但我对某些步骤有具体的问题。

2。我有什么问题

如你所见,我也做了第二名球员。但我仍然有一个问题,我无法计算玩家两次输入数字的频率。我必须计算它,因为如果达到某个数字我希望游戏退出。

此外,我想清除玩家二的屏幕而不清除他的公式。但玩家的公式应该在玩家提交之后消失。

第3。错误/调试

我尝试使用循环,但我无法弄清楚如何在不创建多个配方器的情况下使用它。它应该为每个玩家提交两个数字+ 1。

       <html>
    <head>
      <title>guess a number</title>
    </head>
    <body>
     <h4> guess a number</h4>
     <form action="<?php echo $_SERVER['PHP_SELF'] ?>"method="post">

       <!-- player one is starting here -->
       <p>Spieler 1</p>
       <p>chose your five numbers/Wähle deine 5 Zahlen</p><br />

        <input type="password" name="one" size="1" maxlength="1">
        <input type="password" name="two" size="1" maxlength="1">
        <input type="password" name="three" size="1" maxlength="1">
        <input type="password" name="four" size="1" maxlength="1">
        <input type="password" name="five" size="1" maxlength="1">

            <input type="submit" name="gesendet" value="ok"></button> <br />
        </form>

    <?php
    session_start();

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

        $one = $_POST['one'];
        $two = $_POST['two'];
        $three = $_POST['three'];
        $four = $_POST['four'];
        $five = $_POST['five'];
// array to safe the input of player one with sessions
        $_SESSION['anumberone'][0] = $one;
        $_SESSION['anumberone'][1] = $two;
        $_SESSION['anumberone'][2] = $three;
        $_SESSION['anumberone'][3] = $four;
        $_SESSION['anumberone'][4] = $five;

          foreach ($_SESSION['anumberone'] as $ausgabe) {

            echo "$ausgabe";
          }
        }

        $i = 0;   // how can i count the second submits?
      while ( $i < 5 )  {
        $i = $i + 1;
        echo "$i";


          //start with player two here!
          echo "<br>";
          echo "Spieler 2";
          echo "<form method='post'>";
          echo "Ihre Ziffern:<br>";
          echo "<input type='text' name='sechs' size='1' maxlength='1'>";
          echo "<input type='text' name='sieben' size='1' maxlength='1'>";
          echo "<input type='text' name='acht' size='1' maxlength='1'>";
          echo "<input type='text' name='neun' size='1' maxlength='1'>";
          echo "<input type='text' name='zehn' size='1' maxlength='1'>";
          echo "<input type='submit' name='submitzwei' value='OK'>";
          echo "</form>";

          if(!empty($_POST['submitzwei'])){
              $sechs = $_POST['sechs'];
              $sieben = $_POST['sieben'];
              $acht = $_POST['acht'];
              $neun = $_POST['neun'];
              $zehn = $_POST['zehn'];

              $_SESSION['anumber2'][0] = $sechs;
              $_SESSION['anumber2'][1] = $sieben;
              $_SESSION['anumber2'][2] = $acht;
              $_SESSION['anumber2'][3] = $neun;
              $_SESSION['anumber2'][4] = $zehn;

              foreach ($_SESSION['anumber2'] as $ausgabe) {

                echo "$ausgabe";
              }

            }
          }


        ?>
    </body>
</html>

1 个答案:

答案 0 :(得分:1)

为了做到这一点,您需要使用会话来保存数据,直到您结束会话,请按照以下更改的代码:

<?php
session_start();    

$eins = $_POST['eins'];
$zwei = $_POST['zwei'];
$drei = $_POST['drei'];
$vier = $_POST['vier'];
$fuenf = $_POST['fuenf'];
$_SESSION['inputeins'][0] = $eins;
$_SESSION['inputeins'][1] = $zwei;
$_SESSION['inputeins'][2] = $drei;
$_SESSION['inputeins'][3] = $vier;
$_SESSION['inputeins'][4] = $fuenf;

foreach ($_SESSION['inputeins'] as $ausgabe) {

  echo "$ausgabe<br>";
}   
/*          echo "<form>";
echo "<form action='ratespiel.php' method='post'>";
echo "<input type='submit' value='ok' name='verstecken'>";
echo "</form>";

if (isset($_POST['verstecken'])){
$ausgabe = "";
echo "$ausgabe";
} */
/* echo $input[0] . $input[1] . $input[2] . $input[3] . $input[4]; */

echo "<form method='post'>";
echo "Ihre Ziffern:<br>";
echo "<input type='text' name='sechs' size='1' maxlength='1'>";
echo "<input type='text' name='sieben' size='1' maxlength='1'>";
echo "<input type='text' name='acht' size='1' maxlength='1'>";
echo "<input type='text' name='neun' size='1' maxlength='1'>";
echo "<input type='text' name='zehn' size='1' maxlength='1'>";
echo "<input type='submit' name='submitzwei' value='OK'>";
echo "</form>";

if(!empty($_POST['submitzwei'])){
    $sechs = $_POST['sechs'];
    $sieben = $_POST['sieben'];
    $acht = $_POST['acht'];
    $neun = $_POST['neun'];
    $zehn = $_POST['zehn'];

    $_SESSION['inputzwei'][0] = $sechs;
    $_SESSION['inputzwei'][1] = $sieben;
    $_SESSION['inputzwei'][2] = $acht;
    $_SESSION['inputzwei'][3] = $neun;
    $_SESSION['inputzwei'][4] = $zehn;

    foreach ($_SESSION['inputzwei'] as $ausgabe) {

      echo "$ausgabe<br>";
    }
}
?>