사이트 내 전체검색
PHP
[php] 초보자를 위한 세션사용법
로빈아빠
https://cmd.kr/php/450 URL이 복사되었습니다.

본문

초보자를 위한 세션사용법

<? 
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'); 
?>

댓글목록

등록된 댓글이 없습니다.

PHP
871 (11/18P)

Search

Copyright © Cmd 명령어 18.191.240.222