php isset检查中的同一页面post请求不起作用?

php isset检查中的同一页面post请求不起作用?,php,Php,试图获得一个简单的ISSETFormSubmit来检查post请求是否在同一页面中被单击,但我无法让它工作 <?php if(isset($_POST['btnSubmit'])){ echo "ok"; } ?> <form id="form" name="form" action=""> <fieldset> <legen

试图获得一个简单的ISSETFormSubmit来检查post请求是否在同一页面中被单击,但我无法让它工作

<?php
    if(isset($_POST['btnSubmit'])){
        echo "ok";
    }
?>
<form id="form" name="form" action="">
   <fieldset>
      <legend>
         <label for="fullName">Name</label>
      </legend>
      <input placeholder="Your name" type="text" name="fullName" id="fullName" autofocus>
    </fieldset>
    <fieldset>
       <legend>
          <label for="query">Message</label>
       </legend>
       <textarea placeholder="Type your Message Here...." name="query" id="query"></textarea>
    </fieldset>
    <input name="btnSubmit" type="submit" id="api-submit" value="Submit" />
</form>

名称
消息

我希望这只是在页面上呼应“ok”?我还从实际工作中删去了很多不可使用的代码,因为我只是在这里测试这个原理。但我想我不明白它是如何工作的,因为它正在将表单内容发送到URL,但我不知道如何在单击提交按钮后运行单独的php代码。

在您的表单中,您没有指定它是POST请求,默认情况下,该方法是GET。您需要将
method=“POST”
添加到表单中

<form id="form" name="form" action="" method="POST">
   <fieldset>
      <legend>
         <label for="fullName">Name</label>
      </legend>
      <input placeholder="Your name" type="text" name="fullName" id="fullName" autofocus>
    </fieldset>
    <fieldset>
       <legend>
          <label for="query">Message</label>
       </legend>
       <textarea placeholder="Type your Message Here...." name="query" id="query"> 
       </textarea>
    </fieldset>
    <input name="btnSubmit" type="submit" id="api-submit" value="Submit" />
</form>

名称
消息

您需要在
标记中使用
method=“post”
。否则它默认为
get
。哦,天哪,我是个白痴!!谢谢你指出这一点,总是小错误让我生气