테스트 사이트 - 개발 중인 베타 버전입니다

장바구니 유실 방지 – 미로그인 사용자 장바구니 쿠키 저장 & 로그인 후 복원

· 3개월 전 · 311 · 1

목적
- 비회원이 장바구니에 상품을 담았지만 로그인을 안 한 상태
- 로그인하면 장바구니가 초기화되어 다시 담아야 하는 불편 발생
- 이를 방지하고, 장바구니를 유지 → 전환율 향상


구현
- 비로그인 상태에서 장바구니를 쿠키나 localStorage에 저장
- 로그인 완료 시, 저장된 데이터를 회원 장바구니로 이관


저장 방식 (자바스크립트 예시 – localStorage)
장바구니에 담을 때:
localStorage.setItem('cart_backup', JSON.stringify(cart_items));

 

로그인 완료 후 복원 처리 (PHP 예시 – login_check.php 이후)
<?php
if ($member['mb_id'] && isset($_COOKIE['cart_backup'])) {
    $cart_data = json_decode(stripslashes($_COOKIE['cart_backup']), true);

    foreach ($cart_data as $item) {
        // 상품 정보 추출하여 회원 장바구니에 insert
        sql_query("INSERT INTO {$g5['g5_shop_cart_table']} SET
            mb_id = '{$member['mb_id']}',
            it_id = '{$item['it_id']}',
            ct_qty = '{$item['qty']}',
            ct_time = '".G5_TIME_YMDHIS."',
            ct_status = '쇼핑'
        ");
    }

    // 복원 후 쿠키 삭제
    setcookie('cart_backup', '', time() - 3600, '/');
}
?>

 

 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 1개

3개월 전

좋은팁 감사 합니다.

게시글 목록

번호 제목
670
662
660
653
652
637
623
622
620
619
618
614
599
598
593
586
583
578
575
572
570
568
566
558
552
551
545
543
531
518