ct_select 질문입니다~

ct_select 질문입니다~

QA

ct_select 질문입니다~

본문

기본적으로 저는 장바구니에

담긴 상품은 또 담지 못하게 alert 을 띄우고 있는데요

예) 이미 장바구니에 있는 상품입니다.

 

상품페이지에서

바로구매시 ct_select 가 1이 되는데,

이때 주문서 작성 페이지에서 취소를 누르게 될 경우

ct_select 가 1로 유지된채 history.go(-1) 이 됩니다.

 

cart.php 에서는 ct_select 가 0인것만 od_id 를 $s_cart_id 로 업데이트

시켜주고 있기 때문에

실상 장바구니에 가면 구매하기를 눌렀던 상품이 없는 사태가 발생합니다.

 

게다가

다시 장바구니에 넣으려고 하면

이미 장바구니에 있는 상품입니다 라는 alert 이 노출되구요..

 

 

해결책은

주문서 작성 페이지에서

"취소" 를 클릭 했을경우

1. cart 테이블에 해당 주문번호의 상품을 삭제하거나..

2. 해당 상품의 ct_select 를 0 으로 만들어주거나...

둘 중 하나인데..

 

취소 클릭시

쿼리를 보내야 하는데

감이 안잡혀 질문드립니다 ㅠㅠ

 

어떤 해결책이 있을까요?ㅠ

 

이 질문에 댓글 쓰기 :

답변 2

history.go(-1)대신 cart.php로 링크를 변경해보세요

ct_select 를 0 으로 <-- 이 코드는 필요한 곳에 모두 들어잇습니다

history.go(-1)하니 실행되지않는 것일 뿐.... 

cart.php를 아래처럼 수정해주세요

// 선택필드 초기화
$ss_cart_id = get_session('ss_cart_direct');
$sql = " update {$g5['g5_shop_cart_table']} set ct_select = '0' where od_id = '$s_cart_id' or od_id='$ss_cart_id' ";
sql_query($sql);

말씀해 주신대로 수정하니

바로구매 한뒤 취소하고
같은 상품을 장바구니에 담으니
DB상에서는 2개가 들어가 있네요 ㅎ
바로구매 했을 뒤 취소 된것 1개와 (ct_select = 1, ct_direct = 1)
장바구니에 넣은 것 1개(ct_select = 0, ct_direct = 0)

장바구니 보관시간을 설정해서
비워야 겠군요..

답변 감사드립니다 :D

alert('이미 장바구니에 있는 상품입니다.', './cart.php');

제가 여쭤본건..alert 띄우는 방법이 아닌..
주문서 작성 페이지에서 "취소" 클릭 했을 경우
1. cart 테이블에 해당 주문번호의 상품을 삭제하거나
2. 해당 사품의 ct_select 를 0 으로 만들어 주는 방법입니다..;

답변을 작성하시기 전에 로그인 해주세요.
전체 123,621 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT