我的网站的网页通过使用GET从预定义的URL检索变量来显示网页.
例如,第一页上的代码:index.php
<p><a href="/blank.php?name1=value1&name2=value2">next page</a></p>
第二页:blank.php?name1 = value1& amp; name2 = value2
$name1 = $_GET['name1'] ;
$name2 = $_GET['name2'] ;
echo $name1 ;
echo $name2 ;
这样就可以在现场创建网页,并显示类似于CMS的内容,并对我网站上的所有网页使用此方法,但如果用户为选项卡添加书签,则会显示该网页的过期信息,因为该网页内容已包含在URL中.
编辑:如果我使用post,他们是一个更好的方式将信息传达到新的网页?代替:
<form method="post" action="blank.php">
<input type="hidden" name="name1" value="value1">
<input type="submit">
</form>
最佳答案 快速而肮脏的解决方案:为您的网址添加时间戳参数,例如:
<p><a href="/blank.php?name1=value1&name2=value2&time=<?php echo time(); ?>">next page</a></p>
然后,在页面上,检查时间戳是否早于某个持续时间:
if(!isset($_GET['time']) || time() - intval($_GET['time']) > 60*60) {
header('Location: index.php');
}
$name1 = $_GET['name1'] ;
$name2 = $_GET['name2'] ;
echo htmlspecialchars($name1);
echo htmlspecialchars($name2);
因此,如果链接超过一小时(60秒60分钟),则会重定向到主页!
但是这种方法不是非常用户友好!您最好尝试构建链接,以便在访问时永远不会获得旧内容!