PHP Session 设置过期时间为 10 秒 - 完整示例
<?php
session_start(); // 开启session
// 设置session过期时间为10秒
$_SESSION['isLogged'] = true;
$_SESSION['expire'] = time() + 10;
if(isset($_POST['password'])) {
$password = $_POST['password'];
if($password == '19') {
// 判断是否已经跳转过
if(!isset($_SESSION['isLogged'])) {
$_SESSION['isLogged'] = true; // 标记已经跳转过
// 密码正确,跳转到主页
header('Location: vi.php');
exit;
}
} else {
// 密码错误,提示购买密码
echo '<script>alert('密码错误,请购买密码!');</script>';
// 2秒后跳转到购买链接
echo '<script>
setTimeout(function() {
window.location.href = "http://wpa.qq.com/msgrd?v=3&uin=1159114746&site=qq&menu=yes";
}, 2000);
</script>';
}
}
// 网站内容
// 判断是否已经跳转过
if(!isset($_SESSION['isLogged'])) {
// 判断session是否过期
if(isset($_SESSION['expire']) && time() > $_SESSION['expire']) {
// session过期,重新输入密码
echo '<form method="post"><input type="password" name="password" placeholder="请输入密码"></form>';
} else {
// session未过期,继续显示网站内容
echo '欢迎观看';
}
} else {
// session已经跳转过,直接跳转到主页
header('Location: vi.php');
exit;
}
?>
代码功能:
- 设置 Session 过期时间: 使用
$_SESSION['expire'] = time() + 10;设置 Session 在 10 秒后过期。 - 密码验证: 接受用户输入的密码,进行验证。如果密码正确,则设置
$_SESSION['isLogged'] = true;标记已经登录,并跳转到主页。 - 自动锁定: 如果用户没有登录,则在 10 秒后自动显示密码输入框,要求用户输入密码。
- 过期提示: 如果 Session 已经过期,则会显示密码输入框,提示用户重新输入密码。
注意:
- 该示例代码使用了
time()函数获取当前时间戳,并根据$_SESSION['expire']判断 Session 是否过期。 - 您可以根据实际需要修改 Session 过期时间、密码验证逻辑、网站内容等。
- 建议您使用更安全的密码验证方式,例如使用哈希加密和盐值。
- 在实际项目中,通常会使用数据库或其他存储方式来存储 Session 数据,以便在多个服务器之间共享 Session。
相关链接:
相关关键词:
PHP Session, 过期时间, 10 秒, 自动锁定, 密码验证, 示例代码, PHP Session 文档, PHP time() 函数, PHP header() 函数, PHP $_POST 超全局变量, PHP $_SESSION 超全局变量
原文地址: https://www.cveoy.top/t/topic/nogo 著作权归作者所有。请勿转载和采集!