1

在 PHP 中,我将如何存储变量“backurl”?(检索如下底部所示 - 当需要应用以下约束时)

  • 变量“backurl”存储最后查看的 php 脚本。
  • 在第一次执行时,变量“backurl”被存储并正常工作
  • 当通过该脚本中的 $_GET 或 $_POST 提交表单时,该变量将随着先前 URL 的更改而更新。(我不希望这种情况发生)

即 FROM -> TO(实际结果 - 期望结果)
page1.php -> page2.php(链接到 page1.php - 如预期)
page2.php -> page2.php?test=yes(链接到 page2.php - 我希望它回到 page1.php)

如果有人对如何做到这一点有任何建议,非常感谢!

$backurl =  $_SERVER['HTTP_REFERER'];
4

3 回答 3

0

在page2.php中设置backurlsession并随时随地访问它

于 2013-07-12T12:39:48.000 回答
0

你可以使用会话

<?php

session_start();
if(!isset($_SESSION['backurl'])){
$_SESSION['backurl'] = $_SERVER['HTTP_REFERER'];
}
?>
$_SESSION['backurl']; //contains the back url;

如果您需要取消设置 backurl:

unset($_SESSION['backurl']);
于 2013-07-12T12:40:09.217 回答
0

有几种方法可以做到这一点。仅当脚本页面不同时,才可以使用会话更新您的反向链接。

例如(未经测试):

session_start();

if( $_SEVER['SCRIPT_NAME'] != $_SESSION['lastpage'] ){
    $_SESSION['backurl'] = $_SERVER['REQUEST_URI'];
}

这样,您只会在调用不同的 php 页面时更新 backurl,而当您使用不同的参数转到同一页面时(基于您的示例)保持不变。

根据您的需要调整代码。

于 2013-07-12T12:41:01.643 回答