1

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

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

但这将我立即带到 url2。我想要两者之间的时间间隔。怎么可能呢?提前致谢。

4

5 回答 5

4

这不是它的工作方式。重定向会将您带到一个新页面......然后该页面将不得不进行下一个重定向。您应该执行以下操作:

第 1 页:

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

第2页:

<head>
<meta http-equiv="refresh" content="5; URL=url2">
</head>
于 2012-07-25T06:43:24.190 回答
1

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

实际上,除非您控制 url1 上的内容或对框架使用一些技巧,否则我看不到任何方法可以实现此目的。

于 2012-07-25T06:46:56.033 回答
0

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

您需要专门重定向 fromurl1url2on url1

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

于 2012-07-25T06:46:57.157 回答
0

在标题中:

<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>

干杯

于 2012-07-25T06:49:07.660 回答
0

正如 subirkumarsao、Martin 和 Edmunds 所指出的,iframe 是要走的路。这是最终代码:

<html>
<iframe src="url1" width="500" height="500"> </iframe>
</html>

<?php
include('exp2.php');
?>

现在 exp2.php 有一个提交按钮(它出现在框架的底部),它把我带到 next.php。next.php 有代码:

<?php
header("Location:url2");
exit();
?>
于 2012-07-25T08:51:17.423 回答