초보자를 위한 세션사용법
<?
session_start();
$user="a";
session_register( "user" );
echo $HTTP_SESSION_VARS[user];
?>
1. 세션을 사용하기 전에 실행되어야 하는 함수
세션을 사용하기 위해서는 session_start() 함수를 실행하셔야 합니다
사용예
사용법 X
<html>
<head>
</head>
<body>
<?
session_start();
?>
세션을 사용하기 전에는 어떠한 출력도 없어야 한다
php문 or html문 or 일반문자 or 공백 - No!!
사용법 O
<?
session_start();
?>
<html>
<head>
</head>
<body>
2. 이번에 세션에 값을 넣어볼까요...
<?
session_start();
$user="a";
session_register( "user" );
?>
세션변수는 일반변수에 값을 넣는것하고는 약간달라요
먼저 일반변수를 만들어서 특정값을 넣고 session_register() 함수를 이용해서 세션변수를 서버에 저장을 합니다
* 세션변수가 저장될곳은 php.ini에서 설정이 되어있읍니다. 설정이 않되어 있다면 세션이 저장되지 않습니다, 그리고 세션은 데이타베이스 또는 화일의 형태로 저장할수 있읍니다
* 세션변수를 등록할때는 "$" 를 붙여선 않됩니다 않붙이면 편하겠지만 만든 사람이 이렇게 만들었으니 어째요 따르는 수밖에...
* 세션 유지시간은 기본적으로 20분으로 되어있읍니다
3. 저장되어있는 세션변수의 값을 얻는방법
생각보다 세션변수의 값을 얻는것은 간단합니다. 우선 session_start() 함수를 실행시킨다음에
<?
session_start();
echo $HTTP_SESSION_VARS[user];
?>
위에 보이는 소스처럼 HTTP_SESSION_VARS[등록된 세션변수의 이름] 을 기입하시면 세션에 저장된 세션변수의 값을 얻을수 있읍니다
* 여기서 주의 사항 "$" 붙여서는 않됩니다
4. 저장되어 있는 세션변수의 값을 지우는 방법
<?
session_start();
session_unregister(user);
?>
소스에서 보는 것과 같이 session_unregister() 함수를 사용하시면 됩니다
* 주의 사항 "$" 쓰지마세요
5. 세션설정 하기 (php.ini 건드려 보세)
[Session]
; Handler used to store/retrieve data.
session.save_handler = files
; Argument passed to save_handler. In the case of files, this is the path
; where data files are stored.
session.save_path = /tmp
; Name of the session (used as cookie name).
session.name = PHPSESSID
php.ini의 섹션 [Session] 부분에서 몇가지만 추려서 알려드릴께요 ^^
session.save_handler = files
- 이 부분은 세션을 어떤 형태로 저장할것인가를 정의 하는것입니다
session.save_path = /tmp
- 세션이 저장될 디렉토리 설정
원도우 환경에서 c:temp
리눅스 환경에서 /tmp
session.name = PHPSESSID
- 세션의 이름을 지정
세션이 저장된 디렉토리에 보면 PHPSESSID어쩌고저쩌고 저장이 되어있읍니다
6. 세션값을 배열로 넣기
<?
session_start();
$array[] = 1;
$array[] = 2;
session_register('array');
?>