编辑:SHA1不再被认为是安全的。存储的密码哈希值也应加盐处理。现在有更好的解决方案来解决这个问题。
你可以使用类似这样的东西:
//access.php
<?php
//put sha1() encrypted password here - example is 'hello'
$password = 'aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d';
session_start();
if (!isset($_SESSION['loggedIn'])) {
$_SESSION['loggedIn'] = false;
}
if (isset($_POST['password'])) {
if (sha1($_POST['password']) == $password) {
$_SESSION['loggedIn'] = true;
} else {
die ('Incorrect password');
}
}
if (!$_SESSION['loggedIn']): ?>
<html><head><title>Login</title></head>
<body>
<p>You need to login</p>
<form method="post">
Password: <input type="password" name="password"> <br />
<input type="submit" name="submit" value="Login">
</form>
</body>
</html>
<?php
exit();
endif;
?>
然后在要保护的每个文件上,放在顶部:
<?php
require('access.php');
?>
secret text
这不是一个很好的解决方案,但它可能会做你想要的
编辑
您可以添加一个注销.php页面,例如:
<?php
session_start();
$_SESSION['loggedIn'] = false;
?>
You have logged out