쿠키(Cookie)
쿠키(Cookie)는 인터넷 사용자가 웹 사이트를 접속할 때 서버에서 보내주는 작은 데이터를 의미한다. 이 쿠키는 웹 피어지에서 로그인, 장바구니, 배너 광고 등의 기능을 구현하는 데 주로 사용된다.
로그인의 예를 들면 사용자가 브라우저를 통해 웹 페이지에 로그인하면 서버에서는 클라이언트에 엡 페이지와 쿠기(예:사용자 아이디를)를 전송해 주낟 이 쿠키 정보는 사용자 컴퓨터 폴더에 저장된다. 만약 사용자가 다른 페이지에 접속하면 사용자 측의 프로그램이 컴퓨터 폴더에 해당 쿠키가 있는 지를 체크하여 로그인 상태를 알 수 있다.
쿠키는 사용자의 컴퓨터에 텍스트 파일로 저장되며 다음과 같은 목적으로 사용될 수 있다.
- 웹 사이트의 어떠한 페이지에서도 로그인 상태를 파악한다.
- 인터넷 쇼핑몰에서 구매하고자 하는 물품을 장바구니에 담아 둔다.
- 제 3자가 웹 피이지에 광고 배너를 표시한다.
쿠키 설정하기
setcookie() 함수를 이용하여 쿠키 username에 '홍길동' 값을 설정
쿠키는 30일 이후 만료된다. 여기서 time()은 현재 시간의 타임스탬프 값을 반환 한다.
setcookie()함수의 사용 형식
setcooke(string name, string, value, int expire)
---> 반환 값 : 쿠키 설정이 성공하면 Ture를 반환하고, 실패 시 False를 반환 한다.
매개변수 | 설명 |
name | 쿠키명을 의미한다. |
value | 쿠키명에 설정되는 쿠키 값을 의미한다. |
expire | 쿠키가 만료되는 일시를 의미한다. time() + 24*60*60*30은 30일 간 쿠키를 유효하게 한다. |
쿠키 접근하기
isset() 함수는 변수 값이 존재하는 지를 체크하는 데 사용된다. 변수값이 설정되어 있으면 True, 그렇지 않으면 False 값을 반환 한다.
쿠키 삭제하기
setcookie() 함수 사용 시 username 쿠키의 값을 널("")로 설정하면 username 쿠키가 삭제 된다. 쿠키를 삭제할때 만료일은 현재 이전 시간으로 설정한다. time()-3600은 현재시간 1시간 전으로 만료일을 설정한다.
쿠키를 삭제한 후 다시엑세스를 실행하면 쿠키가 존재 하지 않는 것을 확인 할 수 있다.
쿠키로 로그인 처리하기
실제 웹 페이지에서 쿠키를 이용하여 로그인 처리, 다음 웹 페이지에서는 화면서 '로그인' 글자를보여준다. 만약 '로그인' 글자를 클릭하면 로그인 처리가수행되서 '로그아웃' 글자가 출력 된다.
cookie_login.php에서 로그인 상태를나타내는 userid 쿠키를 설정한다.
setcookie() 함수를 이용하여 userid를 hong123으로 설정 이 쿠키는 30일간 유효하다.
자바스크립트 location.href를 이요하여 cookie_page.php로 페이지를 이동 시킨다.
정리하면 cookie_login.php파일이 실행되면 3행에 의해 userid 쿠키가 설정되고, 6행에 의해 cookie_page.php로 페이지가 이동 된다.
쿠키로 로그아웃 처리하기
'로그아웃'을 클릭하였을때 cookie_logout.php 페이지로 이동한다.
userid 쿠키가 삭제되었기 때문에 cookie_page.php의 $_COOKIE["userid"]는 널("") 값을 가지기 때문에 다음 그림에서와 같이 '로그인' 글자가 화면에 출력된다.
'PHP & MySQL 게시판 > PHP' 카테고리의 다른 글
PHP 객체지향 프로그래밍( 클래스 / 객체 / 속성 / 메서드 / 생성자 / 소멸자 / 접근 제어자 / Setter/Getter ) (0) | 2023.11.07 |
---|---|
세션 생성/삭제 로그인/로그아웃 (0) | 2023.11.07 |
PHP 내장 함수 (0) | 2023.11.07 |
PHP 연습문제 함수와 배열 (0) | 2023.11.07 |
PHP 배열 / 연관 배열 / 2차원 배열 (0) | 2023.11.06 |