我通常使用header("location:xyz.php")
,但这次我要导航到历史记录。我有超过10页从用户导航到单个文件的位置,我想将他导航回10页以外的历史记录。如果是按钮,我使用history.go(-1);return false;
所以在标题中的文件名位置使用它是正确的吗?
还是以任何其他方式让他回到历史?
答案 0 :(得分:1)
我很确定有一种比使用历史更好的方法。 HTTP是无状态的。服务器端不应该关心用户的位置(因为如果你这样做,你会处理更多复杂性,例如多个和并发的窗口/标签)。
如果您希望将用户重定向回他/她来自的地方,可能您想要包含back
GET参数。
<a href="page2.php?r=page1.php">Go next page...</a>
<?php
// do some work and PLEASE: sanitize $_GET
header('Location: ' . $_GET['r']);
?>
答案 1 :(得分:0)
不,你不能在标题内运行javascript。
Javascript只能在HTML页面中运行。标题甚至不是HTML,它有自己的规则。
您可以使用javascript发送一个非常小的页面:history.go(-2);
(-2,一个用于当前页面,一个用于您实际想要访问的页面)。