首页 > 解决方案 > 表单动作不做任何事情

问题描述

我正在尝试创建一个多人游戏,主机将单击一个生成唯一链接的按钮。然后,他们将能够将此链接发送给他们想要一起玩的所有其他玩家。这将允许其他玩家加入同一会话。

我的表格如下所示:

        <form action="includes/host.inc.php" method="post">
          <button type="button" onclick="show()" name="Host">Host</button>
        </form>
        <div id="share" style="display:none;">
          <!-- The text field -->
          <input type="text" value="Link..." id="myInput">

          <!-- The button used to copy the text -->
          <button onclick="myFunction()">Copy text</button>
        </div>

您可以看到表单上的操作引用了一个外部 PHP 文件,该文件应该检查​​用户是否点击了“主机”按钮,如果是,则生成一个随机密钥,该密钥将用作唯一链接的一部分,并且发送到数据库。

目前我希望它简单地回显生成的随机字符串,但我什至没有得到太多的运气。

php文件的代码如下:

<?php

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

  function generateKey() {
    $randStr = uniqid();
    return $randStr;
  }

  echo generateKey();

}
else {
  echo "didnt work";
}

单击表单中的“主机”按钮后,什么也没有发生,我不知道为什么?

在此处输入图像描述

在这里你可以看到我的文件结构。我想我指的是正确的外部 PHP 文件。

如果有人可以帮助我,我将不胜感激!

标签: php

解决方案


改变

<button type="button" onclick="show()" name="Host">Host</button>

<button type="submit" name="Host">Host</button>

不确定这是做什么onclick="show()"的,因为它不包含在问题中。我想你可以通过 Javascript 或那里的东西提交表单。

按钮(类型按钮)只是一个 UI 元素,它不提交表单。


推荐阅读