是否可以及时将用户重定向回他进入页面的页面?
如果他从1.php
进入---->页面2.php
我需要延迟重定向到1.php
始终重定向到他所在的页面 进入了另一页
答案 0 :(得分:11)
您可以使用元标记:
<?php if (!empty($_SERVER['HTTP_REFERER'])) { ?>
<meta http-equiv="refresh" content="2;url=<?php echo $_SERVER['HTTP_REFERER'] ?>">
<?php } ?>
否则,您可以使用JavaScript解决方案:
<head>
<script type="text/javascript">
setTimeout("window.location = '<?php echo $_SERVER['HTTP_REFERER'] ?>'", 2000);
</script>
</head>
答案 1 :(得分:3)
PHP不是动态的(而不是客户端)所以你不能制作定时器。您必须使用元标记或JavaScript。请参阅此答案:Redirect with PHP。
答案 2 :(得分:1)
如果他们通过在表单中输入数据来完成,那么将page1地址传递回隐藏字段中的page2。
page1.php - &gt;提出表格
<form action = page2.php method=post>
<input type=hidden name=return value=page1 />
<input type = submit />
</form>
page2.php - &gt;处理表单,检测返回用户的位置
$next = 'default-welcome-page';
$permitted = array('page1','page3','page4');
if( isset($_POST['return'])
&& in_array($_POST['return'], $permitted) ){
$next = $_POST['return'];
}
header(Location: $next.'php');
exit;
否则你可以构造一个html链接,并执行与上面相同但使用$ _GET数组而不是$ _POST
<a href=page.php?return=page1>Go on, go on...</a>
答案 3 :(得分:0)
旧线程,但也许有用:
header ("Refresh:5; URL=proceed.php");
只要确保遵守规则,标题必须先出现。