Hello se

[php Ajax]아이디 중복검사 Ajax 본문

web

[php Ajax]아이디 중복검사 Ajax

soyamm 2023. 5. 11. 13:26
반응형

아이디 뿐만 아니라 데이터베이스에 저장된 값을 이용해 Ajax로 받아 중복된 값을 체크하는 기능이다.

현재 구현된 기능및 환경

현재 완성된 프로젝트에 기능추가 문의가 들어와서 제품에 해당하는 데이터베이스를 넣고 제품등록 기능까지 만든 상태이다.  

고유의 값(중복 X) : USIM_SERIAL

 

현재 구현된 화면이다

저 세번째있는 Usim serial이 중복되서는 안됨.

 

저기에 이미 저장된 44를 치면 '이미 존재하는 값입니다'라고 나오고

저장되지않은 값이면 '사용가능합니다'라고 나온다

[goEdit1.php]

<tr>
                        <!-- 바뀌면안됨 -->
                        <th> USIM-SERIAL</th>
                        <td>
                            <input type="text" name="usim_serial" oninput="checkDuplicate(this.value)">
                            <span class="redd" id="duplicate-warning"></span>
                        </td>
                    </tr>

                    <script>
                    // AJAX 요청을 보내서 중복 여부를 확인하는 등의 작업을 수행합니다.
                    // 이 예시에서는 임의로 중복 여부를 확인하여 메시지를 표시합니다.
                    function checkDuplicate(value) {
                        $.ajax({
                            type: "POST",
                            url: "check_duplicate1.php",
                            data: "ps_mode=id_ch&usim_serial="+value,
                            success: function(req){
                                if (req == "duplicate") {
                                    var msg = "이미 존재하는 값입니다.";
                                }else{
                                    var msg = "사용가능합니다.";
                                }
                                $("#duplicate-warning").hide().html(msg).fadeIn(100);
                            }});
                    }
                    </script>

 

ajax로 check_duplicate1.php로 data를 보내준다

돌아오는 값이 duplicate면 이미 존재한다는 메시지를 띄어주고 아니면 사용가능하다고 띄어준다.

 

[check_duplicate1.php]

<?php
//여기다가 데이터베이스 연결코드쓰세요!

 // ----------------------------------------------------------
// 아이디중복체크
// ----------------------------------------------------------
if($ps_mode == "id_ch") {
    $item = hd_query("SELECT * FROM  테이블명 WHERE usim_serial = '$usim_serial'",true);

    if ($item && count($item) > 0) {
        // 중복된 값이 있을 경우
        echo "duplicate";
    } else {
        // 중복된 값이 없을 경우
        echo "not_duplicate";
    }
}
?>

hd_query 함수는 따로 설정해준 코드입니다. 데이터베이스 읽는 코드이니 sql문 읽는 코드 넣어주시면됩니다!!

반응형
Comments