웹마스터 팁



개판 오분전 세션 구어먹기.

1. session 이 머게??
2. session 열기
3. session 에 변수 저장하기
4. session 에 저장된 변수 지우기.
5. session 의 아이디 이용
6. session 의 기타 기능 - |
7. session 의 기타 기능 - ||





세션 관련 함수를 제대로 이해하기 위해서는 써버 관리 설정의 한 부분을 먼저
이해 해야 할것이 있다.



세션이 시작 되면 브라우저를 위한 세션 공간을 만든다. -- 써버의 어디에 만들까.
어디에 만드냐믄 이건 써버 관리자 꼴리는대로다. 화장실 한켠에 만들고 싶으면
그렇게 설정하믄 된다.
다만 php 문서 작성자가 화장실이 싫으면 이 문서가 실행 되는 동안에 세션 공간이
만들어지는 곳을 정해줄수 있다.
session_save_path("경로"); 함수가 그 역할을 한다.
물론 이것이 실행 되었다고 해서 써버 설정이 바뀌는건 아니고 이 php 문서가 작동하는
동안만 그렇게 바뀌는거다.
이 session_save_path() 함수의 역할이 하나 더 있다.
인자를 넣어주지 않을때 이 함수의 역할은 현재 세션이 만들어진 그 경로를 알수 있게
해준다. 뭔 말인지 알지??




세션에 저장된 변수를 확인해야 할 필요가 있을때가 있을런지도 모를지도 모른다.
세션에 어떠한 변수가 저장 되었는지 확인할때는
session_is_registered("변수이름") 함수를 쓴다.
세션에 확인이 필요한 변수 이름이 저장 되어있으면 true 값을 갖는다.




세션이 시작 되면 써버에 4096바이트의 세션 공간이 생기고(이말 지겹지??) 이 공간에 변수를 저장
한다고 했는데 이글 읽는 사람들 중에 윈도우 컴에 apm 설치해서 공부하는 사람 몇 있을줄
안다. 세션이 시작 되고 나서 루트 디렉토리에 보면 복잡한 이름을 가진 파일 몇개가
새로 생성 된걸 확인할수 있다. 그리고 이 파일들은 브라우저가 닫히거나 새로 열리면 지워졌다가
새로 생겼다가 한다. 이것이 세션 공간이다.
이것을 노트패드 같은걸로 열어보면 저장된 세션 정보를 확인할수 있는데 때로는
저장된 정보를 인코딩 하거나 또는 인코딩 된 정보를다시 디코딩 할때도 있을 것이다.
이럴때 쓰는 함수가 session_encode() 함수와 session_decode() 함수이다.
물론 이렇게 인코딩 해 놓으믄 써버관리자가 슬쩍 그 파일을 열어본대도 뭔 데이터가
저장 되었는지 알아볼수 없을것이다.



상당히 앞부분에서 주절 거렸던 PHPSESSID=3278ac54e47ab4874654632458eecf24 를 뜯어보면
뒤에 복잡한 헥사코드를 session id 라고 하고 이것은 session_id() 함수를 이용해서 알수
있고 참조할수 있고 다른 브라우저에 전달할수 있다고 했다.
그리고 이 긴 헥사코드가 생기는건 써버가 지 꼴리는대로 생성 된다고 했고...브라우저가 닫히면
없어진다고 했다.(지나고 나서 보니 한말 참 많네.....)

이 헥사코드 말고 PHPSESSID 를 session name 라고 한다. 그리고 이것은 써버 관리자가 설정하는
것이다. 내가 작성한 php 문서가 써버에서 실행 되는 동안 이 session name 를 바꾸고 싶을땐
session_name() 함수를 쓴다.
인자를 주면 그 인자대로 session name 가 바뀌고 인자가 없으면 현재 session name 를 알려준다.

session_name("KOREA"); 라고 한다면

PHPSESSID=3278ac54e47ab4874654632458eecf24 는
KOREA=3278ac54e47ab4874654632458eecf24 가 될것이다.




제목 글쓴이 날짜
개판 오분전 세션 - 6 미친개 2003.04.08
개판 오분전 세션 - 5 미친개 2003.04.08
개판 오분전 세션 - 4 미친개 2003.04.08
개판 오분전 세션 - 3 [4] 미친개 2003.04.08
개판 오분전 세션 - 2 [4] 미친개 2003.04.08
개판 오분전 세션 - 1 [7] 미친개 2003.04.08
객체를 이용한 winamp 방송정보 알아내는 소스 [4] 흑심품은연필 2003.04.07
내 홈피도 채널을?! #1 [16] (' _ ') napclub 2003.03.31
이젠 주소검색 편하게쓰자~~~!! (새창띄우지 않습니다) [5] _-=Knight=-_ 2003.03.05
메일 인증시 기존 회원 전부 인증걸기;;; [4] teslaMINT 2003.03.04
게시판 통체 인클루드 하기 [12] 깜보 2003.03.02
여러분이 원하시던 로또복권 소스공개~ [12] Dopesoul 2003.02.22
NZEO 이메일 인증 따라하기 [또 수정 --;] [44] file teslaMINT 2003.02.22
계정이 php를 지원하는지아닌지 잘 모를때... [16] 격투왕맹호 2003.02.19
유용한 함수 몇가지...;;;; [7] Yuki-H. 2003.02.19
PHP,자바스크립트 제 3탄! 아래에 헤더로 asx감추기를 이용한 PHP무비 플레이어! file ☆좀비파우더™ 2003.02.16
DB를 이용한 현재접속자 수 구하기 [6] 김현석 2003.02.14
[초간단] 헤더로 asx 파일 음악 주소를 숨겨봐요. [9] 모라미 2003.02.14
제로보드 스킨들이 어느 게시판에 쓰이는지 알아보는 소스 [12] teslaMINT 2003.02.11
V3 neo+ 항상 최신버전으로 자동링크시키기 [7] 김현석 2003.02.08