채택완료

추천인이 5000포인트 이하면 가입 안되게 하는방법 문의

2018-12-12 (수) 19:07:02 2,096

안녕하세요.

회원가입할때 추천인을 필수로 입력하게 하고있는대요.

추천인이 포인트가 5000포인트 이하일때는 가입이 안되게 할 수 있나요?

register_form.skin 보니까 체크하는 부분이 있던대,

생초보라 어떻게 해야되는지 모르겠네요.

답변 주실 수 있는 고수님 계시면 부탁드립니다.

==register_form.skin 소스==

        if (typeof(f.mb_recommend) != "undefined" && f.mb_recommend.value) {
            if (f.mb_id.value == f.mb_recommend.value) {
                alert("본인을 추천할 수 없습니다.");
                f.mb_recommend.focus();
                return false;
            }

            var msg = reg_mb_recommend_check();
            if (msg) {
                alert(msg);
                f.mb_recommend.select();
                return false;
            }
        }

|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트

일단 register_form.skin.php 하단에 

var reg_mb_recommend_check2 = function() {
        var result = "";
        $.ajax({
            type: "POST",
            url: g5_bbs_url+"/ajax.mb_recommend2.php",
            data: {
                "reg_mb_recommend": encodeURIComponent($("#reg_mb_recommend").val())
            },
            cache: false,
            async: false,
            success: function(data) {
                result = data;
            }
        });
        return result;
    }

스크립트를 넣어 주십니다

/bbs 폴더에 ajax.mb_recommend2.php 를 만드시고 

아래 내용을 넣습니다 

<?php
include_once("./_common.php");
include_once(G5_LIB_PATH."/register.lib.php");

$mb_recommend = trim($_POST["reg_mb_recommend"]);
if(!$mb_recommend){
    die("추천인을 등록하셔야 합니다");
}
$row=sql_fetch("select mb_id, mb_point from {$g5[member_table]} where mb_id = '$mb_recommend'");
if(!$row[mb_id]){
    die("추천인을 등록하셔야 합니다");
}
if($row[mb_point]<5000){
    die("추천인 포인트가 적어 가입이 불가능합니다");
}
?>

마지막으로 register_form.skin.php 하단쯤에 보시면 

  // submit 최종 폼체크
    function fregisterform_submit(f)

이 있습니다 

이 함수 안에  끝부분

<?php echo chk_captcha_js();  ?>

        document.getElementById("btn_submit").disabled = "disabled";

위쪽에 

if(f.mb_recommend.value){
            var msg = reg_mb_recommend_check2();
            if (msg) {
                alert(msg);
                f.mb_recommend.select();
                return false;
            }
        }
        else{
            alert("추천인을 등록하셔야 가입이 가능합니다");
            f.mb_recommend.select();
             return false;
        }

스크립트를 넣어주세요 

답변에 대한 댓글 1개

감사합니다

/bbs/ajax.mb_recommend.php

하단에 추천인 포인트 가져오는 코드 추가.

Copy
<?php
include_once("./_common.php");
include_once(G5_LIB_PATH."/register.lib.php");

$mb_recommend = trim($_POST["reg_mb_recommend"]);

if ($msg = valid_mb_id($mb_recommend)) {
    die("추천인의 아이디는 영문자, 숫자, _ 만 입력하세요.");
}
if (!($msg = exist_mb_id($mb_recommend))) {
    die("입력하신 추천인은 존재하지 않는 아이디 입니다.");
}

// 추천인 포인트 점수 확인
$mb = get_member($mb_recommend);
if($mb['mb_point'] < 5000)
    die('추천인의 포인트가 5000점 이하입니다.');
?>

/bbs/register_form_update.php

// 캡챠 검수 이후 추천인 작성인 작성 여부 및 포인트 재확인.

Copy
///생략


if (!chk_captcha()) {
    alert('자동등록방지 숫자가 틀렸습니다.');
}

/// 추천인
if($w==''){  // 추천인 포인트 확인.
    $mb_recommend = trim($_POST["reg_mb_recommend"]);

 

    if($mb_recommend == '')

         alert('추천인 아이디를 입력해주세요.');

 

    if ($msg = valid_mb_id($mb_recommend)) {
        alert("추천인의 아이디는 영문자, 숫자, _ 만 입력하세요.");
    }
    if (!($msg = exist_mb_id($mb_recommend))) {
        alert("입력하신 추천인은 존재하지 않는 아이디 입니다.");
    }

    $mb = get_member($mb_recommend);
    if($mb['mb_point'] < 5000)
        alert('추천인의 포인트가 5000점 이하입니다.');

}
 

// 생략

답변에 대한 댓글 1개

답변 감사합니다.
근대 /bbs/register_form_update.php 에서 시키신대로 했는대
추천인을 기입을 해도 계속 추천인 아이디를 입력해주세요 라고 오류뜨네요.

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