PHP头重定向到多个有时间间隔的URL


PHP Header redirect to Multiple URLs with a time gap

我可以使用header()重定向到多个有时间间隔的URL吗?假设我有url1和url2。现在,我想要的是头首先重定向到url1。然后说,5秒钟后,它将我重定向到url2。有什么办法我能做到吗?我尝试了以下简单的代码

<?php
header("Location: url1");
header("Location: url2");
?>

但这会立即将我带到url2。我想要一个介于两者之间的时间间隔。如何做到这一点?提前谢谢。

这不是它的工作方式。重定向会将您带到一个新页面。。。然后该页面将不得不进行下一次重定向。你应该做一些类似的事情:

第1页:

<?php
header("Location: url1");
exit();
?>

第2页:

<head>
<meta http-equiv="refresh" content="5; URL=url2">
</head>

不,你不能那样做。两个标头都会立即发送到浏览器,后一个标头会覆盖第一个标头。您可以在url之前添加"Refresh:X",但它只适用于最后发送的标头(将被重定向到的url)。

事实上,除非你控制url1上的内容或对帧使用一些技巧,否则我看不出有任何方法可以实现这一点。

当您被重定向到url1时,您不再拥有进行另一次重定向的控制权。

您需要在url1上专门从url1重定向到url2

如果您无法控制url1 ,也可以尝试iframe

在标题中:

<script language="JavaScript">
var time = null
function move() {
myiframe.location.href = 'url2';
}
</script>

这个在身体里:

<body onload="timer=setTimeout('move()',2000)"> //where 2000 is 2 seconds
<iframe id="myiframe" name="myiframe" src="url1"> </iframe>

干杯

正如subirkumarsao、Martin和Edmunds所指出的,iframes是前进的道路。这是最后的代码:

<html>
<iframe src="url1" width="500" height="500"> </iframe>
</html>
<?php
include('exp2.php');
?>

现在exp2.php有一个提交按钮(它出现在框架的底部),它将带我进入next.php

<?php
header("Location:url2");
exit();
?>