2014-04-11 2 views
-1

1) 다른 페이지로 전달 된 URL 변수에 더 안정적이고 더 안전하며 안전한 방법입니다. SESSION 변수를 URL 매개 변수로 사용하거나PHP - URL 쿼리 문자열 매개 변수 대 세션 변수

2). 일반 쿼리 문자열 매개 변수입니다.

"추가, 신뢰할 수있는 더 나은, 더 안전한"에 관하여 : 예 : 사용자가 쿠키 2. 브라우저 호환성 3. 만들기 API 호출 (일부 API 년대로 비활성화 할 때와 클라이언트 측에서 파생 1.주의 사항, 제한 및 호환성 문제가 있음) 4. 리소스 및 메모리 사용량 및 처리 속도

URL의 쿼리 문자열 매개 변수의 값이 다를 수있는 사이트를 만들고 있습니다 (URL에 포함 된 9 개의 값) - 기반 사용자 입력. 세션 변수에 변수 값을 저장하는 것이 URL 매개 변수에서 모두 (9 일 수도 있음) 수행하는 것보다 쉽습니다. 그러나 위에서 언급 한 4 가지 관심 때문에 세션 변수를 사용하는 것을 주저합니다.

어떤 조언을 주셔서 감사합니다!

추신. URL 매개 변수는 다음과 같이,은 $ url 변수에 동적으로 을 구축하고있다 :

$keyword = trim($_GET["Keyword"]); 

$url = "webpage.php?"; 
$url .= "&Keyword=$keyword"; 

$shopByStore = $_GET["store"]; 
if (!empty($shopByStore)) { 
$url .= "&store=$shopByStore"; 
} 
// with 7 more GET methods potentially retrieving values for the URL parameters 

의 URL의 다음과 같이 표시됩니다

<a href="<?php echo $url; ?>">anchor text</a><br> 

내가 세션을 변수 경로를 이동하는 경우 물론, 사용자

입력 값은 세션이 끝날 때까지 URL 클릭에서 가져 와서 SESSION 변수에 저장됩니다.

if (isset($_GET["store"])) { 
$_SESSION["shopByStore"] = $_GET["store"]; 
} 
+0

귀하의 질문에 많은 의미가 없습니다 .... 무엇을 묻는 중입니까? – qwertynl

답변

1

물론 제출 된 키워드를 세션 변수에 저장할 수 있습니다.

하지만 유용할까요? 번호

세션 변수는 세션이 파괴 될 때 모든 것을 잊어 버립니다. 어쩌면 사용자가 검색을 저장하거나 다른 사용자에게 제공하려고 할 것입니까?

GET 매개 변수를 사용하면 전체 URL을 복사하여 안전하게 보관할 수 있습니다.

그러나 SESSION 매개 변수? 불가능합니다. 각 사용자는 자신의 세션을 가지고 있으며 다음에 사용자가 사이트를 방문하면 다른 세션을 시작하게됩니다 (예 : 사용자가 이전에 브라우저를 닫은 경우).

세션에서 사용자 고유 정보 만 저장해야합니다. 예를 들어 사용자 ID, 사용자 이름 또는 바구니 항목.

이는 SESSIONGET에 대한 일부 지점에 불과합니다.