为什么这段代码哈希为null?

时间:2013-02-17 15:22:43

标签: php forms post passwords sha256

以下代码传递用户名检查,但密码失败。

如您所见,哈希值得到回应,但出于某种原因,它们会输出e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855,即sha256sum /dev/null。由于密码似乎根本没有回应,我只能假设它无法获得POST,但为什么呢?

登录

<form action="dologin" method="post">
Username: <input type="text" name="username">
Password: <input type="password" name="password">
<input type="submit">
</form>

dologin

    if ( $_POST[username] == $actualusername ) {
        // Hash the password
        $hashedpassword = hash('sha256', $_POST[password]);
        echo $_POST[password];
        echo $hashedpassword;
        if ( $hashedpassword == $actualpassword ) {
            echo '<h2>Logged in</h2>';
        } else {
        echo '<h2>Incorrect password</h2>';
        echo $hashedpassword;
        }
    } else {
        echo '<h2>Incorrect username</h2>';
    }

1 个答案:

答案 0 :(得分:2)

关闭输入标签会解决您的问题吗? 此外,您可以使用

isset($_POST["blabla"])

测试值是否在$_POST中设置。