仅在GET请求具有值时才更改会话变量

时间:2013-12-23 16:52:45

标签: php session-variables

我希望根据用户进行的搜索设置会话变量。我们的想法是,无论他们在网站上的哪个位置,搜索都会填充他们的最后一次搜索。

我有以下代码,如果变量geo-box存在,我认为会设置变量,如果不存在则使用已保存的变量,但这不起作用...

    session_start();

if(isset($_GET['geo-box'])){
    echo $_SESSION['town'] = $_GET['geo-box'];
} else {
    echo $_SESSION['town'];
}

2 个答案:

答案 0 :(得分:3)

session_start();

if(isset($_GET['geo-box']))
  $_SESSION['town'] = $_GET['geo-box'];

echo $_SESSION['town'];

定义变量时无法回显变量。

最好的运气!

答案 1 :(得分:1)

您正在尝试回显变量并将其设置在同一行中。

试试这个:

session_start();

if( isset($_GET['geo-box']) ) {
    $_SESSION['town'] = $_GET['geo-box'];
}

echo $_SESSION['town'];

您无法回显值并同时指定它。试一试!

希望这有帮助。