PHP在有效密码后创建会话

时间:2017-08-29 15:17:25

标签: php forms session passwords

我想在访问者输入有效密码后进行PHP会话,这样我就可以显示一些访问者的隐藏链接,即使在页面重新加载时也是如此。

<?php
if(isset($_POST['submit'])) {
    $password = crypt('sumpasswurd', password_hash('rasmuslerdorf', PASSWORD_BCRYPT)); // password

    if (hash_equals($password, crypt($_POST['password'], $password))) {
        echo 'VALID!';
        // CREATE SESSION HERE
    } else {
        echo 'INVALID';
    }
}

if(isset($_SESSION)) echo 'YOU ARE LOGGED IN WITH A VALID PASSWORD!';
?>
<form method="POST" action="">
    <input type="text" name="password">
    <input type="submit" name="submit" value="OK">
</form>

我怎样才能做到这一点?我的表格加密是否安全?

1 个答案:

答案 0 :(得分:0)

手动会话以session_start()功能开始。虽然您需要通过某种用户异化逻辑来保护会话。例如,您拥有用户的用户名并将其添加为会话变量,然后传递某种会话ID以验证当前会话用户是否确实已插入。之后您必须在每个相关的页面加载中检查这些变量与用户。

在:// CREATE SESSION HERE您可能想要使用以下内容:

Session_start();
$_SESSION['username'] = $username;
// flollowed by session id logic