将PHP表单输入保存到网页
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将PHP表单输入保存到网页相关的知识,希望对你有一定的参考价值。
我试图将input
从php
表单保存到操作页面。
例如,表单位于/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"> </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 echo(在第二个链接上):
<span id="playerName"><?php echo $nameP1; ?></span>
答案
如果要将变量保存在URL中,则应将表单方法更改为GET而不是POST。将第二个php文件中代码中的$ _POST变量更改为$ _GET。
更多信息:http://php.net/manual/en/tutorial.forms.php#37899
以上是关于将PHP表单输入保存到网页的主要内容,如果未能解决你的问题,请参考以下文章
表单中用户输入"<"等转义字符,保存后数据库是原文保存的,但是查看的时候显示的是"<",如何是的<字符在网页原样显示出来。(代码
如何在php网页中通过一个表单让使用者输入数据提交后把输入的数据传递到mysql数据库中?