有没有办法检查$ _POST是否存在?

时间:2014-05-25 14:28:41

标签: php post

我反复调用相同的页面来执行相同的操作x次。在这个循环之前的页面中,我有一个表单要求输入。只有第一次循环运行时我想使用给定的值,但是当我在代码中有$_POST时,它会给出错误。

所以我有两个问题:

  1. 当错误发生时,PHP会继续执行代码吗,如果没有,是否有办法让它这样做,因为这样可以解决我的问题。
  2. 我可以跳过一段代码吗?像skip lines 12-14或其他东西......
  3. 我可以发布我的代码,但我认为这没有多大意义,因为我还有一些其他页面和txt文件等,如果你不知道它是什么,它很难理解。

    我将总结一下:

    page1.html:

    <form action="page2.php" method="post">
    <input type="text" name="input">
    <input type="submit" value="Submit">
    </form>
    

    使page2.php:

    for($i = 0; $i < $_POST['text']; $i++){
    print "<form action=\"page2.php\" method=\"post\">";
    }
    

    如您所见,循环再次调用page2.php,但$_POST['text']将不再存在。那么,有没有办法绕过这个?

    我试过这个:

    if($another_counter_from_another_page > 1){
    //Do nothing
    }
    else
    {
    $_SESSION['counter']=$_POST['text'];
    }
    

    然后用$_POST['text']替换for - 循环中的$_SESSION['counter'],但即使$another_counter_from_another_page > 1为真,我仍然会收到错误,所以这就是我问的原因一种跳过一段代码的方法。

    提前谢谢你,我希望我的问题从我给出的例子中清楚明白...

1 个答案:

答案 0 :(得分:2)

对于单个键:

 if(isset($_POST['myKey'])) {
     echo "myKey exists"
 }

如果您想知道是否有任何POST数据:

if(!empty($_POST)) {
    echo "We have POST data"
}