如果设置了某个POST变量,我有一个显示编辑选项的页面,如下所示:
if(isset($_POST['manageType']) && ($_POST['manageType'] == 'edit'))
{
display_edit_gallery($title, $_GET['gallery']);
}
在display_edit中,有类似这样的内容:
<form action="manage/manage_gallery.php" method="post">
<input type="hidden" name="page" value="gallery_page.php" />
<input type="submit" name ="submit" value="Edit" />
</form>
然后我在manage_gallery.php上做了一些事情,然后用
完成header("Location: " . $_POST['page']);
exit();
执行编辑,我被重定向,除了它似乎我被重定向到我刚刚离开的gallery_page.php的实例。虽然没有通过manage_gallery.php中的帖子发送任何内容,但仍设置了$ _POST ['manageType'](因此仍然显示编辑选项)。我使用'删除图像'选项做类似的事情,同样的事情发生。图像被删除,但我需要重新加载页面才能再显示它。这就像header()执行'回到上一页'之类的东西。
我已经使用了HTTP_REFERER而且效果很好但是我被告知这不是最安全的选择,所以我会避免它。
答案 0 :(得分:-1)
变化:
header("Location: " . $_POST['page']);
exit();
要:
echo <<<'EOD'
<script language="javascript">
window.history.go(-1);
</script>
EOD;
exit();