我被我的家庭作业困住了。. 如何使用 php_self 制作井字游戏?
所以,我有 9 个按钮,数字范围从 1 到 9。然后,当单击第一个按钮时,值将更改为“O”。在带有“O”符号的玩家按下按钮后,如果用户单击该按钮,则会出现“X”符号。该过程将继续进行,直到相同的符号出现在水平、垂直或对角线系列上。
我希望有人可以帮助我:(谢谢
我被我的家庭作业困住了。. 如何使用 php_self 制作井字游戏?
所以,我有 9 个按钮,数字范围从 1 到 9。然后,当单击第一个按钮时,值将更改为“O”。在带有“O”符号的玩家按下按钮后,如果用户单击该按钮,则会出现“X”符号。该过程将继续进行,直到相同的符号出现在水平、垂直或对角线系列上。
我希望有人可以帮助我:(谢谢
不确定您是否需要re-event the wheel
..您需要做的是更改界面...
网上有很多解决方案可以帮助您解决这个问题
PHP & HTML & Javascript
http://code.activestate.com/recipes/276962-php-tic-tac-toe/
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
结论
如果您选择任何您感兴趣的脚本,那么如果您在使其工作有任何困难时可以回来
好吧,在回答这个问题的过程中,我几乎为你做了功课。但是你应该假装我没有,我也会忘记这一点,只专注于你所问的。
此外,PHP_SELF 本身没有任何意义。$_SERVER['PHP_SELF'] 你最有可能指的是你正在编写代码的页面本身。你让它看起来好像有一些东西可以帮助你制作井字游戏-toe 但我不这么认为。如果我错了,也许你可以纠正我。
您似乎提到您已经有一个正在使用的界面。我没有这个接口的代码,所以我假设它看起来像这样:
form 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.ini。我建议您使用 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;
?>
而且..你完成了!
这可能是您需要做的所有重要事情。剩下的只是实现井字游戏的工作方式。如果您需要对我所写的任何内容进行任何澄清,或者您是否需要更多信息,请告诉我。希望这可以帮助!