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

특정 주문건에 대한 반품 및 주문취소시 오류

· 14년 전 · 54 · 2
예전에도 한번 문의를 드린적이 있는데요,
특정 주문건을 amd/shop_admin/orderform.php 페이지에서 준비/배송은 정상적으로 적용되나 반품이나 취소(완료로 전환되는 부분은 별도의 파일에서 관리되고 있어 확인하지 못했음)를 적용할 경우 해당 주문건에 입력되어 있는 결제금액이 해당 주문번호 외에도 쇼핑몰의 전체주문건에 대해서 일과적으로 같은 취소금액으로 적용되어 버립니다. 그래서 이를 경우 mysql로 접속하여 다른 주문건에 적용되어 버린 취소금액을 다시 지워야 됩니다.

저의 사이트에서 사용하고 있는 orderform.php(상품코드, 회원아이디 추가/전하는말씀의 글씨 색상 수정)나 orderformupdate.php(원본파일과 같음) 파일을 최신파일로 비교해봐도 다를 건 없습니다.

주문상태 전환시 활용되는 파일이 위 2가지 파일 이외에도 다른 파일이 있는지요?

댓글 작성

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

로그인하기

댓글 2개

adm/shop_admin/ordercartupdate.php 의

// 주문취소 시 포인트 반환 3월 20일 Harry
$sql1 = "select * from $g4[yc4_cart_table] where on_uid = '$on_uid' or (ct_status = '취소' or ct_status = '반품' or ct_status = '품절') and on_uid= '$on_uid'";
$result = sql_query($sql1);

for ($i=0; $row=sql_fetch_array($result); $i++)
{
...

이 코드는 저희쪽에서 배포한 코드가 아닙니다.

sql_query("update $g4[yc4_order_table] set od_refund_amount = '$od_refund' where od_refund_amount = '$tmp_row[od_refund_amount]' ");

sql_query("update $g4[yc4_order_table] set od_receipt_point = '$po_leave' where od_receipt_point = '$tmp_row[od_receipt_point]' ");

sql_query("update $g4[yc4_order_table] set od_cancel_card = '$od_refund' where od_cancel_card = '$tmp_row[od_cancel_card]' ");

sql_query("update $g4[yc4_order_table] set od_cancel_card = '$od_refund' where od_cancel_card = '$tmp_row[od_cancel_card]' ");

where 조건에 키가 잡혀 있지 않아 말씀하신 상황이 충분히 발생할 가능성이 있습니다.
확인하여 주십시오.
감사합니다.
관리자님의 힌트로 해결하였습니다...^^

게시글 목록

번호 제목
56073
56067
56065
56060
56058
56055
56051
56048
56044
56043
56042
56039
56035
56032
56030
56028
56025
56018
56012
56010