2

好的,我已经自学 PHP 并做了大约 40 个小时的小项目,我想我并没有把简单的 IF 语句弄得一团糟,但是……下面的两个回声显示了正确的东西(密码和密码的长度)。

但是,带有“ARGH”的回声和 studentnotexist 函数被调用了!我不知道为什么。当然,这很简单。

echo $password;
echo strlen($password);

if (strlen($password < 2)) {
    echo "********************* ARGH ************************";
    studentnotexist();
    session_destroy();
    die();
}
else 
//Begin IF blocks that test various conditions for user name and password
if ($password != $passwordentered) { //if password is wrong
    badpassword();
    die();
} 
4

2 回答 2

8

您正在检查“$password < $2”的长度而不是“$password”的长度。

观察差异:

if (strlen($password < 2)) {

对比

if (strlen($password) < 2) {

看看括号在哪里。

你想要第二个。

于 2013-01-11T19:46:26.187 回答
1

注意关闭括号的位置:

if (strlen($password) < 2)
于 2013-01-11T19:46:14.220 回答