2014-03-31 7 views
0

URL 변수에서 가져온 값을 SESSION 변수에 저장하려고합니다. 여기 URL 변수를 세션 변수 (GET 메서드 사용)

는 URL입니다 :

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

변수를 검색하는 SESSION 코딩을,하지만 페이지를 떠나지에 변수 값을 잃는다.

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

아래와 같이 따옴표로 묶은 값 (아래 코드의 "Ace"참조)은 작동합니다. 그러나 GET 메서드 ($ _GET [ "저장"])

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

'세션'을 시작하셨습니까? –

답변

1

문제는 당신이 GET 요청이 존재하는지 여부마다 $_GET["store"]$_SESSION["store"]을 무시한다는 것입니다를 사용하여 위의 코드에서 작동하지 않습니다 기본적으로 $_GET["store"] 만 사용합니다. 대신이를 사용할 수 있습니다 : 당신이 session 다음 (그것이 $_GET 전달 않은 경우) 확인이 이미 session에 저장되지 않은 것을 시작하는 데 필요한 처음에는

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

이미 session 다음 저장소에 저장되지 않은 경우 그것 :

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

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

자세한 내용은 PHP manual을 참조하십시오.