-4
if($_POST['login']) {
    if(isset($_POST['userName']) || isset($_POST['userPassword'])){
        echo 'logging failed';
        $this -> loginMsg = 'Login Failed!'; 
    }
}

大家好,我写了一个登录来停止登录的空点击,我怎么能回显登录失败但将它生成到它不会让我的字符串中?我想知道为什么。

4

3 回答 3

2

如果您不在对象的上下文中(即在类中),请使用一个简单的变量:

$loginMsg = 'Failed!';
于 2013-06-05T20:31:31.647 回答
1

看起来你的支票是错的。不应该是:

if(!isset($_POST['userName']) || !isset($_POST['userPassword'])) {
   // log login failed error
   $loginMsg = 'Login Failed!';
}
于 2013-06-05T20:30:01.607 回答
0

更好的是用 empty 代替 isset,

if($_POST['login']) {
    if(empty($_POST['userName']) || empty($_POST['userPassword'])){
        $loginMsg = 'Login Failed!'; 
    }
}

isset 只检查它是否设置,empty 还检查值是否至少为 1 个字符长(如果是字符串) http://techtalk.virendrachandak.com/php-isset-vs-empty-vs-is_null/

于 2013-06-05T20:41:10.167 回答