繁体   English   中英

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>

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

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

重定向到url1您将不再拥有该控件进行其他重定向的url1

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

如果您无法控制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所指出的那样,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();
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM