if(isset($ _ POST ['submit']))不起作用

时间:2014-05-16 01:37:44

标签: php forms button post submit

我知道有这种情况,但是我尝试了他们的方法,但它对我没用。

以下是isset的代码:我尝试将此语句放在<head>代码之前和<body>代码中,但不要认为它有所作为。 此代码与提交按钮位于同一个php文件中。

<?php if(isset($_POST['action'])) {
    echo "testing";
    exit();
}?>

这是表格&amp;在表单中提交按钮

<form name="createCaseForm" method = "post" action = "<?php echo url_mgt::getActionURL(); ?>" id="case-form" novalidate="novalidate">
    ...
    <td colspan="1"><button style="float:right;" name="action" type="submit" value="create_case_submit">Submit</button></td>
    ...
</form>

我不确定使用<button>代替<input>是否会产生影响。我也做了if(count($ _ POST)&gt; 0)并且它没有工作。我不确定我做错了什么。当我运行该文件时,它不会回显&#34;测试&#34;,而是直接进入下一页。我很抱歉,如果这只是一个小问题,但我尝试在论坛上发布的方法,但似乎都没有。

我试图这样做:

if(isset($_POST['action']) == 0) {
  echo "Testing";
} else {
    echo "Testing2";
}

它在页面加载时显示测试,但是当我点击提交按钮时,我希望看到testing2被打印。我是正确的说,单击提交按钮后,页面将不会重新加载两次?所以无法检查是否正在发布提交按钮?

2 个答案:

答案 0 :(得分:1)

我遇到了与上述相同的问题, if(isset($ _ POST [&#39;提交&#39;]))在提交表单时无法正常工作。将名称设置为操作并不适用于我。解决方案是将提交分配给表单输入元素的 name 字段。在这里,我介绍了在Firefox中测试的MCVE。

Kf个

的index.html

<html>
  <body>
    <form action="learnphp.php" method="post">

      <table border="0">

    <tr>
      <td>Name</td>
      <td align="center"><input type="text" name="username" size="30"/></td>
    </tr>   

    <tr>
      <td>City</td>
      <td align="center"><input type="text" name="cityaddress" size="30"/></td>
    </tr>

    <tr>
      <td><input id="radio1" type="radio"  name="selector"
             value="op1" /> </td>
      <td><input id="radio2" type="radio"  name="selector"
             value="op2" /> </td>         
    </tr>

    <tr>
      <td colspan="2" align="center"><input type="submit"
      name="submit" value="SubmiT"/></td>
    </tr>

      </table>

    </form>
  </body>
</html>

learnphp.php

<html>
  <head>
    <title>Information Gathered</title>
  </head>
  <body>

    <?php
       echo "<p>Data processed \"NOW\"</p>";      

       echo "<p>Let's observe: </p>";

       if(isset($_POST['submit'])){
           echo "submit set<br>";
           echo "Submit value=" . $_POST['submit'] . "<br>";
       }
       else echo "ERROR submit not set<br>";

       if(isset($_POST['selector'])){
           echo "Selecter set<br>";
           echo "Radial selection value=" . $_POST['selector'] . "<br>";
       }
       else echo "ERROR Selector not set<br>";

    echo "</br>";
    ?>
  </body>
</html>

输出:

  

数据处理&#34;现在&#34;

     

让我们观察:
  提交集合   提交值= SubmiT
  选择器组
  径向选择值= op2

答案 1 :(得分:0)

您需要一个名为action

的表单字段
<input type="text" name="action"/>

另外,请确保url_mgt::getActionURL()输出正确的网址以提交