1

我在尝试使此功能工作很长时间时遇到了麻烦。之前,我在做

if ( !filter_has_var(INPUT_POST, 'email') ) {
    code here etc.
}

但这从来没有奏效过,这是应该如何设置函数的正确格式。参考

然后在尝试让它发挥作用之后,我将'email'更改为'$email',这就成功了。所以,现在我很困惑,这是一个小故障还是我顶部的代码不正确?

4

2 回答 2

0

通过这个例子我想你可以更好地理解

if ( !filter_has_var(INPUT_GET, 'email') ) {
    echo "Email Not Found";
} else {
    echo "Email Found";
}

输出

    localhost/nanhe/test.php?email=1 //Email Found
    localhost/nanhe/test.php?email //Email Found
    http://localhost/nanhe/test.php //Email Not Found

考虑第二个例子 http://localhost/nanhe/test.php

$_GET['email']="info@nanhe.in";
if ( !filter_has_var(INPUT_GET, 'email') ) {
    echo "Email Not Found";
} else {
    echo "Email Found";
}

但输出将是电子邮件未找到

于 2013-03-06T14:01:39.080 回答
0

您可以使用:

if (isset($_POST['email']) && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
{ 
   //Your Code here for valid email...
} 
else
{
   //Your Code here for invalid email...
}
于 2013-03-06T13:45:11.000 回答