将HTML表单和相关PHP包含在一个文件中-使用Javascript提交()

将HTML表单和相关PHP包含在一个文件中-使用Javascript提交(),javascript,php,html,forms,submit,Javascript,Php,Html,Forms,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

我想知道怎么可能做到这一点。。。我已经知道如何将表单和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>

输入名称:


所以似乎没有办法引用任何$\u POST值,我可以用它来检查它们是否已经设置好了。。。是否有一个方便的解决方案?

您可以使用请求方法Is post进行检查,请参见下面的示例:

if($_SERVER['REQUEST_METHOD'] == 'POST'){
    echo "<p>This string has been entered: " . $_POST["string"] . "</p><hr />";
}
if($\u服务器['REQUEST\u METHOD']=='POST'){
echo“此字符串已输入:“..$\u POST[“string”]。”


”; }
您绝对应该将链接更改为

它将提交在表单字段中输入的任何内容,我也会给出一个
type=“text”

如果您还需要在发送的变量中包含“提交字符串”。将其添加为隐藏字段:

<input type="hidden" value="Submit String" name="sent"></p>


好的,在玩了一会儿之后,我找到了答案:是的,使用Javascript submit()方法会生成一个$\u POST数组(如果form方法是POST),所有输入都可以像往常一样通过它们的名称引用


可以使用isset($\u POST[“xxxxx”])或$\u SERVER[“REQUEST\u METHOD”]检查所选输入是否已设置。

感谢有用的提示,但如果使用Javascript的submit()函数,这是否有帮助?我仍然无法访问用Javascript提交的数据,因为它似乎不会生成任何$\u POST数据。。。或者是吗?你只是在点击锚上使用javascript进行提交,其行为与提交按钮相同,区别在于它无法发布锚的值。好吧,我无法访问$\u post数据来检查数据是否已设置……如果它与提交按钮配合良好,那么它也应该与此解决方案配合使用。谢谢,但是JS是否将该文本作为$\u POST数组的元素提交?提交字符串只是按钮的一个标题,它不是必需的。试试看-它应该是