我正在尝试制作一个重定向页面,当您访问 www.website.com/redirect.php?link=http://example.com 时,您的浏览器会在几秒钟内重定向到 example.com重定向免责声明。您的帮助将不胜感激!
问问题
7686 次
5 回答
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>
于 2012-11-24T22:42:49.063 回答
3
<?php
echo "disclaimer here";
?>
<script type="text/javascript">
setTimeout(function() { location.href = '<?php echo $_GET["link"]; ?>'; }, 3000);
</script>';
于 2012-11-24T22:34:53.713 回答
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:函数delayer()
在 5 秒后被调用。
2) PHP:这会将GET
参数link
插入到 JavaScript 函数中。
3) HTML:这是您可以插入免责声明的地方,其中代码显示“有关重定向的一些信息!”,在标准 HTML 中。
于 2012-11-24T22:30:50.000 回答
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>
于 2012-11-24T22:31:44.997 回答
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 表示重定向完成前等待的时间(以秒为单位)。
于 2012-11-24T22:52:18.963 回答