minstudio

상태 관리 (Session & Cookie)

👉 세션(Session) 시작과 정보 관리

나를 기억해줘: 세션 🧠

웹 서버는 사용자가 누군지 기억하지 못합니다(Stateless). 세션은 서버 메모리에 사용자의 정보를 저장하여 로그인 상태 등을 유지하는 기술입니다.

모든 세션 사용 전에는 반드시 session_start()가 호출되어야 합니다.


👉 쿠키(Cookie) 설정 및 삭제

내 컴퓨터에 남는 흔적: 쿠키 🍪

세션이 '서버'에 저장된다면, 쿠키는 사용자의 웹 브라우저(로컬)에 저장되는 작은 텍스트 조각입니다. (예: "7일간 보지 않기", 장바구니)

Session vs Cookie 동작 원리

클라이언트 (브라우저) Cookie Storage 일반 쿠키 (위변조 위험) theme=dark 세션 식별자 (중요!) PHPSESSID=1a2b3c 모든 요청에 쿠키 포함 전송 식별자(PHPSESSID)로 세션 조회 서버 (PHP / DB) Session Storage Session ID: 1a2b3c user_id = admin role = root (서버에만 저장되어 안전)
<?php
    // 1. 세션 엔진 가동! (파일 맨 꼭대기에 위치해야 함)
    session_start();

    // 2. 세션 변수 굽기 (로그인 처리)
    $_SESSION["userid"] = "admin123";
    $_SESSION["role"] = "manager";

    // 3. 세션 읽기
    echo "현재 로그인된 아이디: " . $_SESSION["userid"] . "<br>";

    // 4. 세션 삭제 (로그아웃 처리)
    session_unset();  // 변수 비우기
    session_destroy(); // 세션 완전 파괴
?>
상태 관리 (Session & Cookie) | Minstudio