如何使用PHP检查表单字段的具体值?

时间:2014-09-02 23:54:50

标签: php forms validation

如何使用PHP检查表单字段的特定值?

需要插入值'7',否则表单字段无效;所以其他所有数字都无效,然后是7。

if(empty($_POST['captcha']))
{
    $this->add_error("Did you solve the captcha?");
    $ret = false;
}

检查是否有任何值 - 但我需要指定,必须是7。

if(strlen($_POST['captcha']) =!7) // tried this but form completely died or disappeared
{
    $this->add_error("Did you solve the captcha?");
    $ret = false;
}

2 个答案:

答案 0 :(得分:2)

这里有两点需要注意:

  1. 你不应该在这里使用empty(),因为"0"也被认为是空的,似乎它可能是等式的答案;请使用isset()来检查该值是否属于请求。

  2. 您尝试检查$_POST['captcha']的长度,而不是比较其值。

  3. 所以:

    if (!isset($_POST['captcha']) || $_POST['captcha'] != 7) {
        $this->add_error('Did you solve the captcha?');
        $ret = false;
    }
    

答案 1 :(得分:1)

你有两个问题:

=!应为!=。请参阅comparison operators

if(strlen($_POST['captcha']) != 7)

您还需要启用error reporting