• 목록
  • 아래로
  • 위로
  • 5
  • 260578
  • 조회 수 251

(여태까지 했던건 다 날아갔습니다... 저장 안 누르고 내용을 싹 다 날려버렸어요)

<p>아이디: <input maxlength="12" type="text" id="idid" name="id"></p>
                                <button type="button" onclick="                
                                ">중복 확인</button>
                                <span id="check" style="color: gray; font-size: 0.8em">아이디 중복 확인이 필요합니다.</span>
<input type="hidden" name="isChecked" value="no">






버튼을 누르면 'idid'에 입력된 내용을 불러와서 DB에 있는 id와 매칭해서 'check'에 있는 텍스트를 "아이디 중복확인이 완료되었습니다."로 바뀌게 하고, "isChecked"의 내용을 yes로 바꾸고 싶습니다..


그런데 제가 자바스크립트를 아직 배우지 못해서 구글링 해봐도 적용할 방법을 못 찾더겠군요


6시간동안 머리싸매고 검색하고 붙여넣다 질문글 올려봅니다

작성자
260578 58 Lv. (58%) 274630/278480EXP

반가워요!

댓글 5

title: 황금 서버 (30일)humit
profile image

모바일이라서 자세히 쓰기가 어려워 개락적인 방법을 알려드리겠습니다.

아이디를 입력받아서 중복을 체크할 수 있는 페이지를 만든 다음 XmlHttpRequest 로 해당 페이지에 요쳥을 보내서 받아온 응답으로 요소를 조작해주시면 됩니다.

comment menu
2019.01.19. 22:00

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

260578 작성자 → humit
profile image

감사합니다!

comment menu
2019.01.20. 09:44

신고

"260578님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리
profile image
+1

저도 PHP, Javascript(jQuery), MySQL에 대해 쌩초보이고, ajax에 대해 제대로 이해하지 못하지만 용기를 내어 적어봅니다 ^^

일단 humit 님 말씀을 듣고 생각나는대로 작성하고 아직 테스트해보지 못해서 제대로 작동할 가능성은 없지만,

스포어의 고수님들께서 완성해주실 것으로 믿습니다 :)


일단 HTML에서 회원가입 form과 button은 완성하신 것 같군요~!

jquery를 불러오는 부분과 DB 처리와 관련된 부분은 일부 생략하겠습니다.


우선 form에서 받은 데이터를 ajax로 넘겨주는 부분입니다.


<script>
function checkID(){
   $.ajax({
   url: '/idcheck.php',
   type: 'POST',
   data: {'id' : $('#idid').val()},
   dataType: 'html',
   success: function(data){
    alert(data);
   }
 });
}
</script>



받아온 값으로 DB에서 중복된 아이디가 있는지 확인하는 부분(idcheck.php)입니다.


<?php
 $userid=$_POST['id'];
 $conn = mysql_connect(생략);
 $sql= " select count(*) from member where mb_id='$userid' ";
 $result=mysql_query($sql, $conn);
 $idexists=mysql_fetch_array($result);
 mysql_close($conn);
 $confirm=1;
?>



confirm 변수값을 받아서 isChecked의 value 값을 yes로 변경하고, #check의 텍스트도 변경해줍니다.


<script>
 var confirm="<?= $confirm?>";
 if(confirm==1){
   $("input[name=isChecked]").val('yes');
   $("#check").html("아이디 중복확인이 완료되었습니다.");
 }
</scpript>



마지막으로 idexists 변수값을 받아와서 중복 여부에 대해 유저에게 알려줍니다.


<script>
 var check="<?= $idexists[0]?>";
 if(check==1){
   alert("이미 사용중인 아이디입니다.");
 }
</script>



생각해보니 input 태그에 oninput을 넣어서 함수를 실행시켜야 할 것 같네요.

급하게 작성해서 틀린 부분도 많고 스포어의 고수님들께서 보시기에 우스꽝스러운 수준이지만 조금이나마 도움이 되셨으면 좋겠습니다~!

그럼 좋은 주말 되세요 ^^

comment menu
2019.01.19. 23:11

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

260578 작성자 → 이니스프리
profile image

감사합니다..

comment menu
2019.01.20. 09:43

신고

"260578님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 → 260578
profile image

도움이 되셨으면 좋겠네요~!

생각해보니 그누보드 같은 CMS의 소스를 뜯어보시면 관련된 소스를 찾으실 수 있을 것 같네요 ^^

comment menu
2019.01.20. 11:34

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 24.02.11.17:21 394
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 4075
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4465
522 아이폰8+ 네비 사용시 발열(?) 문제에 대한 해결책을 여쭤봅니다 10 이니스프리 19.01.26.18:25 1188
521 파이썬 공부하다 모르는 부분이 있습니다. 14 NoYeah 19.01.26.17:07 459
520 trumbowyg 에디터를 그누보드 아미나빌더에 삽입중입니다. 10 홀민 19.01.25.00:38 266
519 PHP 순서 매기기 3 title: 에그joyful 19.01.23.22:21 256
518 세션연동부분에 대하여 도움이 필요합니다. 2 Hanam09 19.01.21.17:18 211
517 Input submit 버튼 2 260578 19.01.20.18:44 214
516 x-y넷에서 내 웹사이트에서 트래픽 사용 현황을 볼 수 있는 php소스가 있었습니다 2 없음 19.01.20.17:46 195
515 POST 데이터가 보내지지 않습니다 5 260578 19.01.20.13:45 214
514 도메인 포워딩이 제대로 이루어지지 않습니다. 4 image 제르엘 19.01.20.01:28 250
게시판 중복확인 만들다가 너무 허탈해서 올려봅니다 5 260578 19.01.19.19:29 251
512 사이트 정보 등록 2 title: 크롬NUBE 19.01.19.16:11 194
511 PHP잘하시는분 계신가요...? 4 title: 에그joyful 19.01.17.23:22 198
510 비번을 변경해야하는데 도와주세요 스포어 비번이요 1 더딘 19.01.16.19:46 195
509 giphy, gfycat 등 사이트가 일부 브라우저 또는 기기에서 문제가 있나요? 4 이니스프리 19.01.15.16:02 476
508 음 제 블로그가 증발한건가요...? 21 갱생협스 19.01.13.22:50 270
507 미디어플렛폼 vs 커뮤니티 55 title: 에그joyful 19.01.13.15:55 996
506 판단 대기 시간 6 없음 19.01.11.14:09 215
505 링크파싱 애드온에서 대표사진 파일 수집과 관련하여 질문 드립니다 ^^ 9 image 이니스프리 19.01.10.20:05 225
504 비밀번호 값이 불러와지지 않습니다. 2 image 260578 19.01.05.17:28 187
503 사이트 정보 등록 1 없음 19.01.05.09:58 165