在一个文件中包含 HTML 表单和相关的 PHP - 使用 Javascript submit()
Including HTML form and related PHP in one file - with Javascript submit()
我想知道如何才能做到这一点...我已经知道如何将表格和 PHP 包含在一个文件中:
<form method="post"> <!-- might also loop back to the same HTML file with action-->
<?php
if (isset($_POST["sent"])) {
echo "<p>This string has been entered: " . $_POST["string"] . "</p><hr />";
}
?>
<p>Enter string:</p>
<p><input name="string" /></p>
<p><input type="submit" value="Submit String" name="sent"></p>
</form>
但是如果我使用 Javascript 来使用自定义触发器,我需要这样做:
<form action="phpfile.php" name="myForm" method="post">
<p>Enter Name: <input name="name" /></p>
</form>
<a href="javascript:document.myForm.submit();">Submit Name</a>
因此似乎无法引用任何我可以用来检查它们是否已设置的 $_POST 值...对此有方便的解决方案吗?
您可以检查请求方法是 post,请参见下面的示例:
if($_SERVER['REQUEST_METHOD'] == 'POST'){
echo "<p>This string has been entered: " . $_POST["string"] . "</p><hr />";
}
您绝对应该将 link 更改为
<a href="#" onclick="document.myForm.submit(); return false">Submit Name</a>
它将提交在表单字段中输入的任何内容,我也会给它一个 type="text"
。
如果你需要在发送变量中也有'Submit String'。将其添加为隐藏字段:
<input type="hidden" value="Submit String" name="sent"></p>
好吧,玩了一会儿之后我找到了答案:是的,使用 Javascript submit() 方法会生成一个 $_POST 数组(如果表单方法是 post),并且所有可以像往常一样通过名称引用输入。
可以使用 isset($_POST["xxxxx"]) 或 $_SERVER["REQUEST_METHOD"] 检查所选输入是否已设置。
我想知道如何才能做到这一点...我已经知道如何将表格和 PHP 包含在一个文件中:
<form method="post"> <!-- might also loop back to the same HTML file with action-->
<?php
if (isset($_POST["sent"])) {
echo "<p>This string has been entered: " . $_POST["string"] . "</p><hr />";
}
?>
<p>Enter string:</p>
<p><input name="string" /></p>
<p><input type="submit" value="Submit String" name="sent"></p>
</form>
但是如果我使用 Javascript 来使用自定义触发器,我需要这样做:
<form action="phpfile.php" name="myForm" method="post">
<p>Enter Name: <input name="name" /></p>
</form>
<a href="javascript:document.myForm.submit();">Submit Name</a>
因此似乎无法引用任何我可以用来检查它们是否已设置的 $_POST 值...对此有方便的解决方案吗?
您可以检查请求方法是 post,请参见下面的示例:
if($_SERVER['REQUEST_METHOD'] == 'POST'){
echo "<p>This string has been entered: " . $_POST["string"] . "</p><hr />";
}
您绝对应该将 link 更改为
<a href="#" onclick="document.myForm.submit(); return false">Submit Name</a>
它将提交在表单字段中输入的任何内容,我也会给它一个 type="text"
。
如果你需要在发送变量中也有'Submit String'。将其添加为隐藏字段:
<input type="hidden" value="Submit String" name="sent"></p>
好吧,玩了一会儿之后我找到了答案:是的,使用 Javascript submit() 方法会生成一个 $_POST 数组(如果表单方法是 post),并且所有可以像往常一样通过名称引用输入。
可以使用 isset($_POST["xxxxx"]) 或 $_SERVER["REQUEST_METHOD"] 检查所选输入是否已设置。