특정 상품 포인트 결제 막기 하는 방법

특정 상품 포인트 결제 막기 하는 방법

QA

특정 상품 포인트 결제 막기 하는 방법

본문

안녕하세요! 제가 특정 상품은 포인트 결제를 하지 못하도록 막으려고 하는데요 

 

orderform.sub.php 에 있는 

 


   <div class="sod_frm_point">
                
                    <div>
                        <label for="od_temp_point">使用ポイント(<?php echo $point_unit; ?>点単位)</label>
                        <input type="hidden" name="max_temp_point" value="<?php echo $temp_point; ?>">
                        <input type="text" name="od_temp_point" value="0" id="od_temp_point"  size="7"> 点
                    </div>
                    <div id="sod_frm_pt">
                        <span><strong>保有ポイント</strong><?php echo display_point($member['mb_point']); ?></span>
                        <span class="max_point_box"><strong>最大使用可能ポイント</strong><em id="use_max_point"><?php echo display_point($temp_point); ?></em></span>
                    </div>
            
                </div>

 

이 부분에 특정 상품의 it_id  를 가지고 와서 

 


      <div class="sod_frm_point">
                <?php $sql = " select it_id from {$g5['g5_shop_item_table']} ";
                        $result = sql_query($sql);                       
                         $row=sql_fetch_array($result);
                        if($row['it_id'] == 1625209813){ ?>
                    <div>
                        <label for="od_temp_point">使用ポイント(<?php echo $point_unit; ?>点単位)</label>
                        <input type="hidden" name="max_temp_point" value="<?php echo $temp_point; ?>">
                        <input type="text" name="od_temp_point" value="0" id="od_temp_point"  size="7"> 点
                    </div>
                    <div id="sod_frm_pt">
                        <span><strong>保有ポイント</strong><?php echo display_point($member['mb_point']); ?></span>
                        <span class="max_point_box"><strong>最大使用可能ポイント</strong><em id="use_max_point"><?php echo display_point($temp_point); ?></em></span>
                    </div>
                    <?php } else { ?>
                    <div><strong>ポイントで購入できません</strong></div>
                    <?php } ?>
                </div>
 

이런식으로 만들어보려고 했는데요.. 사실 sql 문이 굉장히 잘못 되어서 if문이 제대로 작동하지 않는거 같은데.. 이럴때는 어떻게 수정을 해야할까요? 어떤 테이블 에서 빼와야하는거죠? 그리고 제가 하고 있는 코드가 맞을까요?

이 질문에 댓글 쓰기 :

답변 1

shop/"orderform.sub.php"에서

 

        // $s_cart_id 로 현재 장바구니 자료 쿼리
        $sql = " select a.ct_id,
                        a.it_id,
                        a.it_name,
...

$point_flag=true;

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

 

if( $row['it_id']=='특정상품'])

       $point_flag=false;

 

.....

 

 

   }

 

 

 

포인트 결제 처리하는 부분에서

if( $point_flag) 이렇게 조건을 걸면 되지 않을까요?

 

 

선생님 조언을 주셔서 너무너무 감사합니다 선생님 말씀대로


//sql 밑 
$point_flag=true;
        for ($i=0; $row=sql_fetch_array($result); $i++)
        {
			
			if( $row['a.it_id']== 1627370607){

				$point_flag=false;

			}




//하단
 <div class="sod_frm_point">
					<?php 
						if($point_flag){
					?>
					<div>
                        <label for="od_temp_point">使用ポイント(<?php echo $point_unit; ?>点単位)</label>
                        <input type="hidden" name="max_temp_point" value="<?php echo $temp_point; ?>">
                        <input type="text" name="od_temp_point" value="0" id="od_temp_point"  size="7"> 点
                    </div>
                    <div id="sod_frm_pt">
                        <span><strong>保有ポイント</strong><?php echo display_point($member['mb_point']); ?></span>
                        <span class="max_point_box"><strong>最大使用可能ポイント</strong><em id="use_max_point"><?php echo display_point($temp_point); ?></em></span>
                    </div>
                    
					
					<?php }else {?>

					<div>
                        <label for="od_temp_point">ポイントを使用することができません</label>
                        <input type="hidden" name="max_temp_point" value="<?php echo $temp_point; ?>">
                        <input type="hidden" name="od_temp_point" value="0" id="od_temp_point"  size="7">
                    </div>
                    <div id="sod_frm_pt">
                        <span><strong>保有ポイント</strong><?php echo display_point($member['mb_point']); ?></span>
                        <span class="max_point_box"></span>
                    </div>

					<?php }?>


                </div>



일단 선생님이 조언해주신 $row['it_id']는 위에 조인 쿼리에서 a.it_id으로 가지고 온것인지 it_id 하면 아예 뜨질 않더라고요 그래서 $row['a.it_id']으로 했지만 상품을 가져오지 못하는거 같습니다 왜 그런지 모르겠네요.... 계속 $point_flag=true; 이니까 true 였을때로 작동하는거 같습니다

감사합니다! 선생님 덕분에 그대로 해결을 했습니다 아이디를 찾아도 범위로 제어하는것이 어렵다는것을 깨닫고 선생님이 만들어주신 $point_flag는 사용하고 포인트로 제어를 하였습니다 0 포인트면 무료니 다 다운받을수있도록 하고 포인트 상품은 일정 포인트가 넘어가면 $point_flag를 false로 만들어서 살수 없겠끔 제어했더니 성공하였습니다 포인트로 제어를 했기 때문에 향후 유지보수를 해야겠지만 그래도 지금은 이렇게 개발을 해보려고 합니다 정말 감사합니다!!

답변을 작성하시기 전에 로그인 해주세요.
전체 728
QA 내용 검색
filter #sql ×

회원로그인

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