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

주문하기 버튼을 클릭하면 결재는 잘 되는데 결재 성공 화면이 안나옵니다. 채택완료

restime 11년 전 조회 7,369

 

주소랑 다 넣고  주문하기 버튼을 누르고 KCP를 통한 신용카드 결제도 마치면 페이지가 한참동안 멈춰있다가 화면에 아래와 같은 문구가 나옵니다.  

 

select b.it_sell_email, a.it_id, a.it_name from g5_shop_cart a left join g5_shop_item b on ( a.it_id = b.it_id ) where a.od_id = '2014071815154833' and a.ct_select = '1' and b.it_sell_email <> '' group by a.it_id

2006 : MySQL server has gone away

error file : /gb5/shop/orderformupdate.php

 

하지만 관리자로 들어가보면 일단 주문은 성공적으로 접수 되어있고 카드 결제도 정상적으로 처리되어있습니다.  

 

구매자 아이디로 마이페이지에 들어가봐도 성공적으로 주문 되어있는걸로 나오고요.  

 

 

신용카드로 해도, 무통장입금으로 해도 마찬가지로 에러 화면이 표시 됩니다. 

 

한 4번에 3번 정도는 위와 같은 현상이고, 한번 정도는 정상적으로 주문결제 내역 화면이 표시가 됩니다.  

 

뭐가 문제인걸까요...  

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

답변 6개

채택된 답변
+20 포인트

아니면 해당 페이지 상단에

</p><p><span class="pln">ini_set</span><span class="pun">(</span><span class="str">'mysql.connect_timeout'</span><span class="pun">,</span><span class="pln"> </span><span class="lit">300</span><span class="pun">);</span></p><p><span class="pun">​</span><span class="pln">ini_set</span><span class="pun">(</span><span class="str">'default_socket_timeout'</span><span class="pun">,</span><span class="pln"> </span><span class="lit">300</span><span class="pun">);</span></p><p>

를 추가해보세요​.. 

 

이 방법을 먼저 사용해보세요

대기시간을 5분으로 늘려주는거구요

 

호스팅사에서 설정된 mysql 연결 시간이 짦아서 생기는 문제일 가능성이 큽니다...

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

r
restime
11년 전
상단에 두개 다 넣어주니 ​ini_set('default_socket_timeout', 300); 에서 에러가 나구요.
첫번째 ini_set('mysql.connect_timeout', 300); 요것만 shop/orderformupdate.php 에 넣어주니 타임아웃이 일어나지 않아서 에러가 나지 않는 것 같습니다. 감사합니다! ^^
r
restime
11년 전
오늘 확인한 결과 또 에러가 납니다.... 사람이 몰려서 그런건지... 아이고. ㅠㅠ

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

k
6년 전

error메세지에 뒤에 점이 몇개냐에 따라 이유가 다른거 같습니다. 

error..

error... 

보통 점이 세게나오는데 이런경우엔 추가배송비 관련해서 문제 생기는거 같습니다. 

제거하시면 아마 잘 되실수 있을겁니다. 

 

orderformupdate.php 에 관련 메세지를 참고해보세요 

로그인 후 평가할 수 있습니다

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

10년 전

해당 문제 해결하셨는지 모르겠지만...

 

저도 동일 문제를 겪다가 우선 원인은 파악하였습니다.

이메일 발송 지연으로 인한 것이더군요.

 

관리자모드에서 이메일 발송 체크아웃 했더니 해당 문제는 발생하지 않더군요.

 

균이님이라는 분이 알려주셨네요.

관련 링크 | http://sir.co.kr/qa/?wr_id=52967#answer_52986" target="_self">http://sir.co.kr/qa/?wr_id=52967#answer_52986

 

이제 부터는 ...

이메일 발송이 지연되는 문제를 찾아서 해결해야 하는 상태이구요.

로그인 후 평가할 수 있습니다

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

서버가 많이 느리신건가요? 정확한 진단은 힘들지만...

일단 저라면 시간을 좀 늘려볼것 같아요..

그리고 사람들 데이터 요청하고 몇초 걸리는지도 로그만들어서 파악하시는게 좋을것 같네요... 

로그인 후 평가할 수 있습니다

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

정확히 이런 문제다! 라고 말씀드릴수 있는 문제는 아닌것 같습니다만...

 

제 생각에는 페이지가 한참 멈춰있는다고 하셨는데요...

그때 시간 초과로 연결이 해제되었을 가능성도 있습니다...

일단 해볼수 있는거중 한가지 말씀드리자면....

 

문제가 있던 /gb5/shop/orderformupdate.php 파일에서...

해당 쿼리문 위쪽에 mysql에 재 접속하도록 코드를 추가해보세요.

 

 

select b.it_sell_email, a.it_id, a.it_name from g5_shop_cart a left join g5_shop_item b on ( a.it_id = b.it_id ) where a.od_id = '2014071815154833' and a.ct_select = '1' and b.it_sell_email <> '' group by a.it_id
 

로그인 후 평가할 수 있습니다

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

 아래 팁 한번 참고해보세요

http://www.miwit.com/b/mw_tip-3040">http://www.miwit.com/b/mw_tip-3040 

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

r
restime
11년 전
링크 설명대로 lib/common.lib.php 파일을

// DB 연결
function sql_connect($host, $user, $pass)
{ global $g5;
return @mysql_connect($host, $user, $pass, true);
}

이렇게 바꿔보았으나 에러는 여전한거 같습니다. ㅠㅠ

http://sir.co.kr/qa/?wr_id=30025
이 분께서 올린 문제와 같은거 같은데 해결책을 못찾겠네요.

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

답변을 작성하려면 로그인이 필요합니다.

로그인