用php和session会话判断点击按钮后显示内容
用php和session会话判断点击按钮后显示内容,页面上正常显示一个按钮,不显示其他代码,点击按钮后,才能显示其他内容。并且设置为1个小时内不会再出现按钮提示,1个小时后,会再出现这个按钮,隐藏内容。重新点击按钮后,会再展示内容。代码如下:
<?php
session_start(); // 开启会话
// 检查是否已经设置过会话变量,并且时间没有超过1小时
if (!isset($_SESSION['content_revealed']) || (time() - $_SESSION['content_revealed'] > 3600)) {
// 用户没有确认,或者已经超过1小时,隐藏首页内容
$showContent = false;
} else {
// 用户已经确认,并且时间没有超过1小时,显示首页内容
$showContent = true;
}
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['reveal'])) {
// 用户点击了显示内容按钮,设置会话变量,并记录当前时间
$_SESSION['content_revealed'] = time();
$showContent = true;
// 重定向到同一页面,但使用 GET 请求
header('Location: /index.php');
exit();
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>首页</title>
</head>
<body>
<?php if (!$showContent){ ?>
<!-- 隐藏首页内容,只显示一个按钮 -->
<p>点击按钮以显示首页内容。</p>
<form action="" method="post">
<input type="submit" name="reveal" value="显示内容">
</form>
<?php }else{ ?>
<!-- 显示首页内容 -->
<h1>欢迎来到我们的首页!</h1>
<p>这里是首页的主要内容...</p>
<!-- 其他首页内容 -->
<?php } ?>
</body>
</html>