使用带有$ _POST的条件

时间:2012-06-06 19:30:38

标签: php forms

我有一个文本框。它的名字就是例子。

<input type="text" name="example"/>

我想检查一下,任何数据来自示例与否。 我尝试使用如下代码:

<?php
if(empty($_POST["example"]))
{
      echo "You need to enter any text to example box.";
}
?>

但是这个代码是打印的,当我第一次进入页面时。 我希望只有在点击提交时才会看到打印数据。

7 个答案:

答案 0 :(得分:3)

检查

if(!isset($_POST["submitButtonName"]))
{
   // validation logic here
} 

答案 1 :(得分:3)

isset在这里是正确的选择 - empty仅用于检查已知变量以查看它是否“清空”。根据{{​​3}}

  

以下内容被认为是空的:

"" (an empty string)
0 (0 as an integer)
0.0 (0 as a float)
"0" (0 as a string)
NULL
FALSE
array() (an empty array)
var $var; (a variable declared, but without a value in a class)

它没有说的是它如何处理未定义的数组成员。对文档页面的评论为我们提供了一些测试方面的见解:docs

  

请注意,检查数组的子键是否存在   subkey不存在,但父进行并且是一个字符串将返回   空虚。

issethttp://www.php.net/manual/en/function.empty.php#105722)旨在“确定变量是否已设置且不为NULL。” - 正是您所追求的。因此,您的代码最终看起来像这样:

// check the length, too, to avoid zero-length strings
if(!isset($_POST["example"]) || strlen(trim($_POST["example"])) < 1) {
     echo "You need to enter any text to example box.";
} else {
    // handle form submission
}

<强>文档

PHP isset - docs

PHP empty - http://php.net/manual/en/function.isset.php

更多阅读 - http://www.php.net/manual/en/function.empty.php

答案 2 :(得分:1)

<?php
if(isset($_POST['example']) && empty($_POST['example']))
{
      echo "You need to enter any text to example box.";
}
?>

答案 3 :(得分:0)

使用它是更好的选择:

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    if(empty($_POST["example"]))
       {
          echo "You need to enter any text to example box.";
       }
}

这将检查服务器上是否有POST,然后您就会有条件。

答案 4 :(得分:0)

if (!empty ($_POST))
{
    // Validation logic here
    if ((!isset ($_POST ['example'])) || (empty ($_POST ["example"])))
    {
        echo "You need to enter any text to example box.";
    }
}
else
{
    // No need to do any validation logic, the form hasn't been submitted yet. 
}

答案 5 :(得分:0)

首先检查$ _POST变量,因为只有在提交页面时它才可用。

<?php
    if(!empty($_POST)){
      if(isset($_POST['example']) && empty($_POST['example'])){
         echo "You need to enter any text to example box.";
      }         
   }
 ?>

答案 6 :(得分:-1)

首先检查submit按钮。

<input type="text" name="example" value="" />
<input type="submit" name="submit" value="submit" />

<?php 
    if (isset($_POST['submit'])) {

        if (empty($_POST['example'])) {
            echo "You need to enter any text to example box.";
        }
?>