我会在一页中使用$ _POST两次

时间:2018-07-15 00:20:59

标签: php

我有一个付款的网站,通过它创建了帐单,但问题是我不能一次使用$ _POST两次,并且此示例:

    <?  if (isset($_POST['submit'])) { ?>
        <form action="" method="POST" >
              <input name="invoice" value="" type="text" />
              <input name="pay" value="Pay Now" type="submit" />
        </form>
<? }   if (isset($_POST['pay'])) {
        // MY QUERY HERE
        // HEADERS HERE
} else { ?>
<form action="" method="POST" >
    <input name="info" value="" type="text" />
    <input name="submit" value="Submit" type="submit" />
</form>  
<?  } ?>

2 个答案:

答案 0 :(得分:0)

尝试一下。

请检查代码以获取注释。

<?
  if (isset($_POST['submit'])) {
    $info = $_POST['info'];
   // use echo to display second form
   echo '
    <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST" >
      <!-- // Note the action value, it's for post back. This allow you to post back to the current page -->
      <!-- This is to keep the record passed from the first form -->
      <input name="info" value="'. $info .'" type="hidden" />
      <input name="invoice" value="" type="text" />
      <input name="pay" value="Pay Now" type="submit" />
    </form>';
  } else if (isset($_POST['pay'])) {

    // MY QUERY HERE

  } else {
    // Note the action value, it's for post back. This allow you to post back to the current page
    <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST" >
       <input name="info" value="" type="text" />
       <input name="submit" value="Submit" type="submit" />
    </form>
  }
?>

答案 1 :(得分:-1)

这不是最漂亮的方法,但是要获得您的结果,请尝试...

<?php if (isset($_POST['submit'])) { ?>
    <form action="" method="POST" >
        <input name="invoice" value="" type="text" />
        <input name="pay" value="Pay Now" type="submit" />
    </form>
<?php } elseif (isset($_POST['pay'])) { 

    // Perform query here

} else { ?>
    <form action="" method="POST" >
        <input name="info" value="" type="text" />
        <input name="submit" value="Submit" type="submit" />
    </form>
<?php } ?>