2013-07-18 2 views
0

나는 공식적인 코드가 있지만 세션 변수를 다른 페이지로 전달할 수 없습니다. 여기 내 샘플 코드가 있습니다.PHP 세션에서 다른 페이지로 변수를 전달할 수 없습니다.

<?php 
session_start(); 
$_SESSION['try'] = 5; 
header('Location: page2.php'); 
?> 

2를 만드는 코드 : 다음 manual에서

<?php 
session_start(); 
$test = $_SESSION['try']; 
echo $test; 
?> 
+2

쿠키가 해제되어 있습니까? 그렇다면 세션에 session_id를 넘겨 줄 필요가 있습니다. –

+0

쿠키는'$ _SESSION' 변수와 아무런 관련이 없습니다 – adamdehaven

+0

$ test에 이중 등호가 있어야합니까? –

답변

0

다음에

session_start() creates a session or resumes the current 
one based on a session identifier passed via a GET or POST request, 
or passed via a cookie. 

관심을 지불하지만,이 코드의 결과는 0 :

PAGE1 코드 마지막 두 줄의 코드 :

<?php 
// page1.php 

session_start(); 

echo 'Welcome to page #1'; 

$_SESSION['favcolor'] = 'green'; 
$_SESSION['animal'] = 'cat'; 
$_SESSION['time']  = time(); 

// Works if session cookie was accepted 
echo '<br /><a href="page2.php">page 2</a>'; 

// Or maybe pass along the session id, if needed 
echo '<br /><a href="page2.php?' . SID . '">page 2</a>'; 
?> 
+1

[manual] (http://www.php.net/manual/en/session .configuration.php # ini.session.use-only-cookies) - session.use_only_cookies는 모듈이 쿠키를 사용하여 클라이언트 측에 세션 ID를 저장할지 여부를 지정합니다. 이 설정을 사용하면 URL에서 세션 ID를 전달하는 것과 관련된 공격을 방지 할 수 있습니다. 이 설정은 PHP 4.3.0에서 추가되었습니다. PHP 5.3.0부터 기본값은 1 (사용 가능)입니다. – Orangepill

+0

@Orangepill right! 귀하의 의견에 감사드립니다! – alfasin

+0

감사합니다. 나는 코드를 테스트했다. "2 페이지"를 클릭하면 결과가 여전히 0으로 표시되어 세션 변수의 값이 두 번째 페이지로 전달되지 않음을 의미합니다. page2의 – user2596579

관련 문제