채택완료

상품 한번만 구매가능하게 하기

Copy
// 한번만 구매가능하도록
$sql = " select it_id from {$g5['g5_shop_cart_table']}
          where mb_id = '{$member['mb_id']}'
             and it_id = '$it_id'
             and ct_status != '취소' and ct_status != '쇼핑'
        ";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
   if ($row['it_id']) {  
       alert('이미 구매한 상품입니다.');
   }
}

 

/shop/orderformupdate.php 에 넣었는데 여러번 구매가 되네요 ㅠㅠ

소스가 잘못된걸까요?

|

답변 2개

채택된 답변
+20 포인트

$row=sql_fetch_array($result) 값이 없어도 for문이 시작되어 그런것 같습니다.  

 

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

if ($row['it_id']) {        

alert('이미 구매한 상품입니다.');  

 }

}

 부분을

 

Copy
if($row=sql_num_rows($result) > 0) {

alert('이미 구매한 상품입니다.');

}

 

로 변경해보시길 바랍니다.~

 

orderformupdate.php에서 $it_id 값을 어떻게 구해오나요?

여러개의 상품을 주문하면 $it_id 값도 여러개를 넣어가면서 검사를 해야 하는데....

 

orderformupdate.php가 아니라 cartupdate.php 장바구니 담기부분에서

for문 내에 $it_id 가 나옵니다

다음행에 위 소스를 넣으면 되겟습니다

 

 

 

 

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