2014-02-26 2 views
0

오늘 세션에 관해 질문을 했으므로 결국 문제를 해결했습니다. 하지만 난 내 세션을 시작하고 지금 후 : 내가 바로이 파일에 물어 갔지세션이 시작되었지만 리디렉션 후 존재하지 않습니까?

header('Location: main.php'); 

는 마일이 main.php 파일로 리디렉션하지만 :

if (!isset($_SESSION['uname'])) { 

    echo '<script type="text/javascript">alert("not set");</script>'; 
} 

내가 set.Why하지 대답 할거야? 내 세션을 설정했습니다. 리디렉션 후에 왜이 세션의 존재에 대해 묻는다면 그것이 존재하지 않는다고 말하는 이유는 무엇입니까?

+3

'$ _SESSION'을 사용하기 전에 main.php에서'session_start()'를 호출 했습니까? – Paulpro

+0

그리고 그 문제는 내가 "헤더"를 주 파일의 동일한 주 파일에 넣을 때 "session_start();" – user3351517

답변

2

세션을 사용중인 모든 파일에서 세션을 시작해야합니다.

session_start(); 

main.php에서 빠뜨린 것 같습니다.

세션을 사용중인 모든 PHP 페이지의 상단에이 줄을 추가하십시오.

+0

이렇게하면 기본적으로 $ _SESSION [ 'uname'] = $ uname; – user3351517

+0

그것은 현재 세션에 이름을 광고합니다. – user3351517

+0

나는 이해했다고 생각합니다. 감사합니다. – user3351517

관련 문제