2010-03-30 7 views
2

좋아요. 세션을 설정했는데, 이제 어떻게 다른 페이지에서 작동하게 할 수 있습니까? PHP를 사용하여 한 페이지에서 다른 페이지로 세션을 계속 진행하는 방법

은 당신이에 세션을 사용하고자하는 모든 페이지의 상단에) (

@session_start(); 

if(isset($_SESSION['$userName'])) { 

echo "Your session is running " . $_SESSION['$userName']; 

} 
+0

죄송합니다. 늦게 답변드립니다. 그 힘이 지역에서 나갔다.^ – MrEnder

+5

명확히하기 위해 - "$ _SESSION [ '$ userName']"$ _SESSION [ 'userName'] (달러 기호 없음)이되어서는 안됩니까? – bisko

+3

왜'@ '를 사용하고 있습니까? 'session_start'가 에러 나 경고를 내고 있습니까? – Chris

답변

9

당신의 PHP 설정, 당신은 첫 번째 페이지에서이

같은 것을 할 수 있어야한다 (세션 기록 확인) 명확하고 쿠키는 일반적으로 브라우저로 전송 (보존)하는 경우 :

session_start(); 
if(isset($_SESSION['userName'])) { 
    echo "Your session is running " . $_SESSION['userName']; 
} 

주의 session_ 수 : 두 번째 페이지에서

session_start(); 
$_SESSION['userName'] = 'Root'; 

출력을 보내기 전에 start()를 호출해야하므로 session_start에 @를 사용해야한다면 경고를 숨길 수 있습니다. 다음으로

은 경고이며 주어진 예제으로 session_start 호출하기 전에이 문제를 추가하려고 작동하지 않으면 다음에, 첫 번째 페이지 (test1.php)에

error_reporting(E_ALL); 
0

확신으로 session_start를 확인하고 시도했다. 그런 다음 예제 에서처럼 세션 변수를 참조 할 수 있습니다.

+0

thats ive done = [its 작동하지 않음 = [내 로그인 – MrEnder

0

첫 번째 히트시 세션 쿠키가 브라우저로 전송되고 후속 요청에서 브라우저가 세션 쿠키를 반환하는지 확인하십시오. 이것이 실패 할 수있는 이유는 많이 있습니다. 일반적으로 session_start() (UTF-8 BOM 문자 또는 막 난잡한 프로그래밍으로 인해 발생할 수 있음) 호출 전에 PHP가 헤더를 플러시했습니다.

오류보고 기능을 사용하도록 설정했는지 확인하십시오.

C.

1

<?php 
session_start(); 

$_SESSION['userName'] = 'This is Ravi'; 

?> 

을 두 번째 페이지 (test2.php),

<?php 
session_start(); 
if(isset($_SESSION['userName'])) { 
echo "Your session is running " . $_SESSION['userName']; 
} 

?> 
0

두 페이지가 모두 동일한 도메인에 있는지 확인하십시오. www.site.com도 site.com과 다릅니다.

echo session_id(); 또한 각 페이지에서 session_id를 식별하는 데 도움이됩니다.

0

$_session 이름 변수에서 대소 문자를 구분하십시오.

그러므로 $_SESSION['userName']$_SESSION['username']과 다릅니다.

+0

에 문제가있어 야합니다.이 질문에는 대답하지 않으므로 대부분 코멘트가되어야합니다. – EWit

0
  1. 로그인 페이지를 만들 때 올바른 ID와 비밀번호없이 로그인하지 않아야합니다. 사용자 로그인 후
  2. 는 집으로, 여기에 사용자가 로그 아웃 할 수 와서 다시 로그인 페이지로

참고 간다 : 사용자가 로그인 페이지를 거치지 않고 홈 페이지에 액세스 할 수 없습니다.

0

첫 페이지 (hello1.php) - 보관 세션

$userName = "Nick"; 
session_start(); 
$_SESSION['username'] = $userName; 

초 페이지 (hello2.php) - 출력 세션

session_start(); 
$userName = $_SESSION['username']; 
echo "$userName"; 

출력 : 닉

관련 문제