PHP“if($ 1 == $ 2)”即使它们是相同的,也会显示为false

时间:2017-09-27 17:50:33

标签: php if-statement

我创建了一个网站,您可以登录,我可以在您可以更改密码的页面上工作。所以我有3个<input>元素,1个检查“当前密码”检出(这个工作正常),另外2个是“新密码”和“确认密码”但是当我把它们放入我的if时它是虚假的。

HTML表单:

<input name="newpassword" type="password" placeholder="New password"/>
<input name="new2password" type="password" placeholder="Confirm password"/>

PHP代码:

if ($newpassword == $new2password) {
    $newhash = password_hash($newpassword, PASSWORD_DEFAULT);

    $sql = "UPDATE users SET password = $newhash WHERE username = $username";

    if ($conn->query($sql) === TRUE) {
        echo "Password successfully updated";
    } else {
        echo "Error: " . $sql . "<br>" . $conn->error;
    }
} else {
    Echo "Passwords did not match";
}

简化:

if ($newpassword == $new2password) {
  Echo "Great success";
} else {
  Echo "Passwords did not match";
}

为什么这个剂量工作会很棒的任何帮助。

1 个答案:

答案 0 :(得分:0)

如果声明,那么Else区块就错了。感谢大家的帮助。