회원가입수정 폼에서 onbur function이 작동을 잘 안합니다.

회원가입수정 폼에서 onbur function이 작동을 잘 안합니다.

QA

회원가입수정 폼에서 onbur function이 작동을 잘 안합니다.

본문

회원가입수정폼에서 mb_1이란 필드값을 이용해 면허번호가 중복이 안되고, 숫자로 되게 할려고 합니다.

그런데 아래와 같이 제가 할수 있는대로 다 해봤는데 안됩니다.

테스트해보니 bbs/ajax.mb_1.php로 $_POST['mb_1']이 넘어오지 않습니다.

고진선처 부탁드립니다.

>>> skin/member/basic/register_form.skin.php


<th scope="row"><label for="reg_mb_1">면허번호<strong class="sound_only">필수</strong></label></th>
            <td>
                <span class="frm_info">숫자만 입력 가능.</span>
                <input type="text" name="mb_1" value="<?php echo $member['mb_1'] ?>" id="reg_mb_1" <?php echo $required ?> <?php echo $readonly ?> class="frm_input minlength_3" maxlength="20" onblur="mb_1_check();">
                <span id="msg_mb_1"></span>
            </td>

...
function mb_1_check() {
    var msg = reg_mb_1_check();
    if (msg) {
            $("#msg_mb_1").text(msg);
            $("#reg_mb_1").select();
    } else
            $("#msg_mb_1").text(""); 
}
...</script>

>>> js/jquery.register_form.js

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

>>> bbs/ajax.mb_1.php

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

$mb_1 = escape_trim($_POST['reg_1']);
$mb_id = escape_trim($_POST['reg_mb_id']);

if ($msg = valid_mb_1($mb_1)) die($msg);
if ($msg = exist_mb_1($mb_1, $mb_id)) die($msg);
?>

>>> lib/register.lib.php

function valid_mb_1($reg_mb_1)
{
  if (!preg_match("/^[^0][0-9]{2,5}$/", $reg_mb_1))
        return "면허번호가 형식에 맞지 않습니다.";
    else
        return "";
}

function exist_mb_1($reg_mb_1, $reg_mb_id)
{
    global $g5;
    $row = sql_fetch(" select count(*) as cnt from `{$g5['member_table']}` where mb_1 = '$reg_mb_1' and mb_id <> '$reg_mb_id' ");
    if ($row['cnt'])
        return "이미 사용중인 면허번호입니다.";
    else
        return "";
}

===





이 질문에 댓글 쓰기 :

답변 1

"reg_mb_1": $("#reg_mb_1").val(), 라고 적어주셨는데..
$mb_1 = escape_trim($_POST['reg_1']); 는 reg_1 으로 받고 있네요.
$_POST['reg_mb_1'] 으로 수정해야할 듯 합니다.
답변을 작성하시기 전에 로그인 해주세요.
전체 126,483 | RSS
QA 내용 검색

회원로그인

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