我想将用户重定向到他们来自的页面,但不要使用javascript go.back之类的东西,因为它不会再次加载页面。
我找到了一些代码
<?php
$ref1 = urlencode($_SERVER['HTTP_REFERER']);
$ref2 = urlencode('http://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']);
echo '<meta http-equiv="refresh" content="5;url=page2.php?ref1='.$ref1.'&ref2='.$ref2.'">';
?>
我只想要一个PHP文件获取以前的URL,确切的URL,然后将用户发送回它。我正在使用PHP,因为它会导致页面再次加载。我使用了javascript,但它不会再次加载页面,所以请在这里帮助我。提前谢谢.
怎么样?
<?php
header ("Location: ".$_SERVER['HTTP_REFERER']);
?>
您可以使用php直接将客户端重定向到另一个页面,而无需使用http的元刷新...
我是这样用的:
1 - 在上一页中,我获得了完整的 url 并添加了 like 参数,即最后一个参数。
$e = $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];
href="www.nextpage.com?x=yours_parameters&e=<?php echo $e; ?>"
2 - 在实际页面中,您必须获取 e 值
$_SESSION["url"] = $_SERVER['REQUEST_URI'];
$link = explode("e=",$_SESSION["url"]);
$e = $link[1];
3 -所以,var $e将是你的后退网址
<script>location.href='$e';</script>";
为了不依赖引荐来源网址,您可以将您从中发布表单的页面的 URL 存储在隐藏输入中,然后在处理 POST 请求的脚本中从 $_POST 获取它并发出重定向到该 url。
一个非常简单的例子:
在模板中:
<form action="<?= $yourDestinationUrl ?>" method="POST">
<!-- Here be your form elements -->
<input type="hidden" name="redirectTo" value="<?= $_SERVER['REQUEST_URI'] ?>" />
</form>
在处理 POST 请求的脚本中:
[your logic goes here]
if(!empty($_POST['redirectTo']) {
header('Location: ' . $_POST['redirectTo']);
die;
}