我正在尝试制作一个重定向页面,当您访问www.website.com/redirect.php?link=http://example.com时,几秒钟内您的浏览器会重定向到example.com显示重定向免责声明。非常感谢您的帮助!
答案 0 :(得分:5)
Javascript有效,但您不需要它,只需使用元刷新
<?php
$url=$_GET['link'];
?>
<html>
<head>
<title>Rediercting</title>
<meta http-equiv="refresh" content="10;URL='<?php echo $url; ?>'" />
</head>
<body>
<p><a href="<?php echo $url; ?>">Redirecting to <?php echo $url; ?></a></p>
<p>Some disclaimer</p>
</body>
</html>
答案 1 :(得分:3)
<?php
echo "disclaimer here";
?>
<script type="text/javascript">
setTimeout(function() { location.href = '<?php echo $_GET["link"]; ?>'; }, 3000);
</script>';
答案 2 :(得分:1)
PHP是服务器端脚本,因此您将无法在延迟后重定向(因为这将在页面加载后发生,因此在客户端手中处理重定向)
尝试使用看起来像这样的页面:
<html>
<head>
<script type="text/javascript">
function delayer(){
window.location = "<?php echo $_GET['link']; ?>"
}
</script>
</head>
<body onLoad="setTimeout('delayer()', 5000)">
Some info about the redirect!
</body>
</html>
这里有三个主要组成部分:
1)JavaScript:5秒后调用函数delayer()
。
2)PHP:这会将GET
参数link
插入到JavaScript函数中。
3)HTML:您可以在此处插入免责声明,其中代码为“有关重定向的一些信息!”,标准HTML。
答案 3 :(得分:0)
您需要先通过JavaScript执行此操作才能获得免责声明消息。
<html>
<head>
<title>Redirect</title>
<script type="text/javascript">
function redirect(){
window.location = "<?php echo $link; ?>";
}
</script>
</head>
<body onload="setTimeout(redirect(), 5000);">
<B>DISCLAIMER HERE</B>
</body>
</html>
答案 4 :(得分:0)
正如用户名tbd所说,你不能延迟服务器端的重定向。
JavaScript解决方案的替代方案是原生HTML
<!doctype html>
<html>
<head>
<meta http-equiv="refresh" content="15; url=<?php echo $redirectTarget; ?>">
</head>
<body>
Your disclaimer
</body>
<html>
15表示重定向完成前等待的时间(以秒为单位)。