【问题标题】:Save PHP Form Input to Web Page将 PHP 表单输入保存到网页
【发布时间】:2018-06-11 20:23:41
【问题描述】:

我正在尝试inputPHP 表单保存到操作页面。

例如,表单位于/world/play/create/create.php,onsubmit 导致/world/play/create/index.php?id=(6DIGIT#) 来自第一个 URL 的用户名输入将回显到操作并保存到页面,这样任何用户都可以返回查看。

但是,当我运行此代码(如下)时,它会在提交表单的选项卡上显示用户名,但其他访问链接的用户在加入时看不到该用户名;每个人只能看到自己的用户名。

我正在努力让每个人都能看到他们的输入和其他人的输入,但现在它只显示他们自己的。

目前这是我目前所拥有的:

网址:

/world/play/create/index.php?id=M12345 

表格(在第一个链接上):

<form id="access" method="post" action="/world/play/create/index.php?id=" onsubmit="this.action=this.action.split('#')[0]+'M'+(Math.floor(Math.random()*(75800-39408))+30938);phpValue();">
<input autocomplete="off" type="text" name="nameP1" id="unm" placeholder="Username" value="<?php echo $nameP1;?>">
<br>
<div style="line-height:10px">&nbsp;</div>
<input type="submit" value="CONTINUE" onclick="return checkInput()">
</form>

PHP(在第二个链接上):

    <?php
$nameErr = "";
$nameP1 = "";$nameP2 = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  if (empty($_POST["nameP1"])) {
    $nameErr = "Name is required";
  } else {
    $nameP1 = test_input($_POST["nameP1"]);
    // check if name only contains letters and whitespace
    if (!preg_match("/^[a-zA-Z ]*$/",$nameP1)) {
      $nameErr = "Only letters and white space allowed"; 
    }
  }
}

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  if (empty($_POST["nameP2"])) {
    $nameErr = "Name is required";
  } else {
    $nameP2 = test_input($_POST["nameP2"]);
    // check if name only contains letters and whitespace
    if (!preg_match("/^[a-zA-Z ]*$/",$nameP2)) {
      $nameErr = "Only letters and white space allowed"; 
    }
  }
}

function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}
?>

最后,PHP 回显(在第二个链接上):

 <span id="playerName"><?php echo $nameP1; ?></span>&nbsp;

【问题讨论】:

  • 无法理解您的问题。您要实现什么目标,最重要的是您面临什么问题以及您在哪个代码中遇到问题?
  • 有什么问题。你有任何错误吗?
  • 对不起,我忘了提。当我运行此代码时,它会在提交表单的选项卡上显示用户名,但其他用户在加入时看不到该用户名。

标签: php forms input save echo


【解决方案1】:

如果您想将变量保存在 URL 中,您应该将表单方法更改为 GET 而不是 POST。 将第二个 php 文件代码中的 $_POST 变量更改为 $_GET。

更多信息: http://php.net/manual/en/tutorial.forms.php#37899

【讨论】:

  • 我的错,我的问题不清楚,为了清楚起见,我已经更新了它。
猜你喜欢
  • 1970-01-01
  • 2016-03-12
  • 1970-01-01
  • 2016-12-22
  • 2020-03-12
  • 1970-01-01
  • 2015-11-20
  • 2014-08-20
  • 1970-01-01
相关资源
最近更新 更多