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

거듭 질문 죄송합니다) 포인트로만 결제하게 만드려면... 채택완료

구르는뚱 10년 전 조회 3,893

        $temp_point = 0;
        // 회원이면서 포인트사용이면
        if ($is_member && $config['cf_use_point'])
        {
            // 포인트 결제 사용 포인트보다 회원의 포인트가 크다면
            if ($member['mb_point'] >= $default['de_settle_min_point'])
            {
                $temp_point = (int)$default['de_settle_max_point'];</P>
<P>                if($temp_point > (int)$tot_sell_price)
                    $temp_point = (int)$tot_sell_price;</P>
<P>                if($temp_point > (int)$member['mb_point'])
                    $temp_point = (int)$member['mb_point'];</P>
<P>                $point_unit = (int)$default['de_settle_point_unit'];
                $temp_point = (int)((int)($temp_point / $point_unit) * $point_unit);</P>
<P>                echo '<div id="sod_frm_pt"><input type="hidden" name="max_temp_point" value="'.$temp_point.'">결제포인트 : <input type="text" id="od_temp_point" name="od_temp_point" value="0" class="frm_input" size="10">점 ('.$point_unit.'점 단위로 입력하세요.)</div>';
                echo '<p id="sod_frm_pt_info">회원님의 보유포인트('.display_point($member['mb_point']).')중 <strong id="use_max_point">'.display_point($temp_point).'</strong>까지 사용 가능합니다.</p>';
                $multi_settle++;
            }
        }</P>
<P>        if ($default['de_bank_use']) {
            // 은행계좌를 배열로 만든후
            $str = explode("\n", trim($default['de_bank_account']));
            if (count($str) <= 1)
            {
                $bank_account = '<input type="hidden" name="od_bank_account" value="'.$str[0].'">'.$str[0].PHP_EOL;
            }
            else
            {
                $bank_account = '<select name="od_bank_account" id="od_bank_account">'.PHP_EOL;
                $bank_account .= '<option value="">선택하십시오.</option>';
                for ($i=0; $i<count($str); $i++)
                {
                    //$str[$i] = str_replace("\r", "", $str[$i]);
                    $str[$i] = trim($str[$i]);
                    $bank_account .= '<option value="'.$str[$i].'">'.$str[$i].'</option>'.PHP_EOL;
                }
                $bank_account .= '</select>'.PHP_EOL;
            }
            echo '<div id="settle_bank" style="display:none">';
            echo '<label for="od_bank_account" class="sound_only">입금할 계좌</label>';
            echo $bank_account;
            echo '
<label for="od_deposit_name">입금자명</label>';
            echo '<input type="text" name="od_deposit_name" id="od_deposit_name" class="frm_input" size="10" maxlength="20">';
            echo '</div>';
        }</P>
<P>        if ($default['de_bank_use'] || $default['de_vbank_use'] || $default['de_iche_use'] || $default['de_card_use'] || $default['de_hp_use']) {
            echo '</div>';
        }</P>
<P>        if ($multi_settle == 0)
            echo '<p>결제할 방법이 없습니다.
운영자에게 알려주시면 감사하겠습니다.</p>';
        ?>
    </section></P>
<P>

 

 

if ($multi_settle == 0)
​일때 포인트 결제만 가능하도록 출력하려면 앞에

 

   $temp_point = 0;
        // 회원이면서 포인트사용이면
        if ($is_member && $config['cf_use_point'])
        {
            // 포인트 결제 사용 포인트보다 회원의 포인트가 크다면
            if ($member['mb_point'] >= $default['de_settle_min_point'])
            {
                $temp_point = (int)$default['de_settle_max_point'];

                if($temp_point > (int)$tot_sell_price)
                    $temp_point = (int)$tot_sell_price;

                if($temp_point > (int)$member['mb_point'])
                    $temp_point = (int)$member['mb_point'];

                $point_unit = (int)$default['de_settle_point_unit'];
                $temp_point = (int)((int)($temp_point / $point_unit) * $point_unit);

                echo '

결제포인트 : 점 ('.$point_unit.'점 단위로 입력하세요.)
';
                echo '

회원님의 보유포인트('.display_point($member['mb_point']).')중 '.display_point($temp_point).'까지 사용 가능합니다.

';
                $multi_settle++;
            }
        }

요 부분을 수정해서 붙이면 되는 걸까요?ㅠ

참고로 홈페이지에 대해선 아는게 없이 맨몸박치기 중입니다...

포인트로만 결제를 해야하는데 저 좀 살려주세요 ㅠㅠㅠ

 

무통장입금에 포인트 결제가 가능하도록 설정시 포인트가 결제 금액보다 적게 입력되거나

아예 입력되지 않아도 주문이 들어옵니다 ..ㅠㅠ

전 포인트가 적거나 없으면 아예 주문이 되지 않도록 하고 싶습니다.

다음달부터 전문과정을 기초부터 들어가는데 정작 지금 당장 필요한 부분이라 제 능력이 미치질 못하네요ㅠㅠㅠ

 

 

 

 

 

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

답변 1개

채택된 답변
+20 포인트
10년 전

무통장 결제로 하고 포인트 입력하게 해서 하면 됩니다.

구매 금액보다 적은 숫자의 포인트로 결제가 통과하는 문제는 이렇게 해보세요.

 

/shop/orderform.php 에 보면 하단에 폼 체크하는 부분이 많이 있을겁니다. 

아래 내용과 비슷한 부분이 여러개 있을텐데 중간에 이 내용 그대로 복사해서 추가하세요. 

 

if (temp_point < od_price) {

    alert("구매 가격보다 적습니다.");

    f.od_temp_point.select();

    return false;

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

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

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

로그인