0

私は宿題でとても行き詰まっています。。php_selfでtic-tac-toeを作成する方法は?

したがって、1から9までの番号範囲の9つのボタンがあります。次に、最初のボタンがクリックされると、値が「O」に変更されます。「O」の記号が付いたプレーヤーがボタンを押した後、ユーザーがボタンをクリックすると「X」の記号が表示されます。このプロセスは、同じ記号が水平、垂直、または斜めの系列に表示されるまで続行されます。

誰かが私を助けてくれることを願っています:(ありがとう

4

2 に答える 2

1

あなたがする必要があるかどうかわからないre-event the wheel..あなたがする必要があるのはインターフェースを変更することです...

これであなたを助けることができる非常に多くのソリューションがオンラインにあります

PHP&HTML&Javascript

http://code.activestate.com/recipes/276962-php-tic-tac-toe/

http://t-dev.iglu.cz/

http://scripts.franciscocharrua.com/javascript/tic-tac-toe/

http://www.mystcommunity.com/board/index.php?/topic/11367-tic-tac-toe-in-php/

PHPとHTML

http://refactormycode.com/codes/1524-simple-tic-tac-toe-php-pure-html

http://jadendreamer.wordpress.com/2012/01/31/php-tutorial-2-player-tic-tac-toe-game-no-database-required/

結論

興味のあるスクリプトのいずれかを選択した場合、それを機能させるのに問題がある場合は、カムバックできます。

于 2012-04-25T02:22:08.680 に答える
0

この質問に答える過程で、私はほとんどあなたのために宿題をしました。しかし、あなたは私がそうではないふりをするべきであり、私もそれを忘れて、あなたが尋ねたことに集中するつもりです。

また、PHP_SELF自体は何の意味もありません。$ _SERVER ['PHP_SELF']は、コードを記述しているページ自体を指している可能性が最も高いものです。三目並べを作成するのに役立つ何かがあるように見せます。 -つま先ですが、私はそうは思いません。たぶん、私が間違っていれば、あなたは私を訂正することができます。

あなたはあなたがあなたが使っているインターフェースをすでに持っていると言っているようです。このインターフェイスのコードがないので、次のようになっていると思います。

http://jsfiddle.net/vyyXP/1/

フォームのhtmlタグには通常、actionと呼ばれる別の属性が含まれています。フォームのデータを他のページに移動する場合は、通常これを使用します。別のページを作成したくないので、これを完全に省略するか、次のようなものを使用できます。

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"></form>

これがあなたのPHP_SELFが入る唯一の場所です。繰り返しになりますが、それについて何か他のことを知っているなら、私に知らせてください。

だから..今、実際にあなたのこの問題を解決し始めましょう。

ステップ1:ボタンのクリックを取得して使用する方法を理解します。

ボタンをクリックするたびに。フォームが送信され、ページが再読み込みされます。ヘッダーについての知識がある場合は、ボタンをクリックしてフォームを送信するたびに、pressed=1またはpressed=2などが追加されます。name="pressed"この「押された」キーワードは、ボタンが属性として持っているという事実に由来しています。(すべてのボタンの名前が同じであることに注意してください!)。

このデータを使用して、その人が実際に何をクリックしたかを把握する必要があります。

私が使用しているので、代わりに使用<form method="post">することでこのデータを取得できます。<?php $pressed = $_POST['pressed'] ?>使用method="get"した場合は、代わりに使用する必要があります$_GET['pressed']

演習として、ユーザーがクリックしたボタンに「X」を表示するだけです。作業を楽にするために、フォーム内のボタンのhtmlコードを動的に生成する必要があります。

<?php
    for ($i=0; $i<9; $i++) {
    echo '<button name="pressed" value="'.$i.'">';
        if ($_POST['pressed']==$i)
            echo 'X';
        echo '</button>';
    if ($i!=0 && ($i+1)%3==0)
        echo "</br>\n";
    }
?>

ステップ2:データを記憶する方法を理解します。

phpを使用しているので。PHPセッションを使用することをお勧めします。基本的には、ファイルの先頭にsession_start()を配置するだけで、値を$ _SESSION変数に格納でき、次にページにアクセスしたときにphpが記憶します。これを使用して、ボタンが押された回数をカウントし、OとXを交互に切り替えることができます。

セッションを破棄する方法を理解します。(そのリセットボタンを機能させます)。これは非常に重要です。

必要に応じてCookieを使用したり、ファイルに書き込んだりすることもできますが、セッションがおそらく最も簡単に使用できます。

単純なカウンターの例を次に示します。

<?php
  session_start();
  $count = 0;
  if (isset($_SESSION['count']))
    $count = $_SESSION['count'];
  echo $count;
  $_SESSION['count'] = $count+1;
?>

そして..これで完了です。

これはおそらくあなたがする必要があるすべての重要なことです。残りは、ゲームの三目並べがどのように機能するかを実装しているだけです。私が書いたものについて何か説明が必要な場合、またはさらに情報が必要な場合はお知らせください。お役に立てれば!

于 2012-04-26T12:44:37.063 に答える