我可以使用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();
?>