2014-03-31 64 views
0

我試圖存儲從URL變量獲得到一個會話變量的值。網址變量Session變量(使用GET方法)

這裏是網址:

<a href="webpage.php?store=<?php echo 'Ace'; ?>">Ace Hardware</a> 

這裏是SESSION的編碼,以檢索變量,但在離開頁面失去變量值。

$_SESSION["store"] = $_GET["store"]; 
$shopByStore = $_SESSION["store"]; 

如果我插在引號中的價值,因爲它是低於(見「王牌」,在下面的代碼),它的工作原理。不過,這並不在代碼工作上面使用GET方法($ _GET [「存儲」])

$_SESSION["store"] = "Ace"; 
$shopByStore = $_SESSION["store"]; 
+0

你是否開始'會話'? –

回答

1

的問題是,你重寫了$_SESSION["store"]$_GET["store"]每次get請求是否存在,所以它基本上只使用$_GET["store"]。你也可以使用這樣的:

if (isset($_GET["store"])) { 
    $_SESSION["store"] = $_GET["store"]; 
} 
1

首先,你需要啓動session並確保它(如果它在$_GET真實傳遞)本已不被存儲在session如果尚未保存在session然後店它:

// The first line in your script 
session_start(); 

if (isset($_GET["store"])) { 
    if (!isset($_SESSION["store"])) { 
     $_SESSION["store"] = $_GET["store"]; 
    } 
} 

瞭解更多關於PHP manual