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

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

<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. (60%) 274780/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

신고

"이니스프리님의 댓글"

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

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 시스템 점검 작업 완료 안내 10 마스터 24.09.05.16:25 597
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 7422
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4792
526 삼성 덱스에 대해 궁금한게 있어요! 13 title: 에그joyful 18.10.04.16:33 271
게시판 중복확인 만들다가 너무 허탈해서 올려봅니다 5 260578 19.01.19.19:29 271
524 라엘 님의 이미지 캐시 서버 구축하기와 관련하여 구체적인 방법을 여쭤봅니다 4 이니스프리 19.01.27.13:59 271
523 부트스트랩 모달을 사용하면 모바일 환경에서 문제의 소지가 있을까요?? 2 이니스프리 19.05.15.22:26 271
522 [파이썬] 롯데백화점 크롤링과 관련하여 질문을 드립니다 2 image 이니스프리 19.12.04.21:56 271
521 [PHP] nl2br 함수 관련 3 260578 18.11.21.20:28 272
520 그누보드용 회원차단 크롬 확장프로그램을 만들어보려는데요~ ^-^ 7 이니스프리 20.03.24.23:53 272
519 별로중요한건아니지만 궁금중이 생김 10 초보 21.02.19.09:54 272
518 500 오류 2 맛수타 17.06.09.05:59 273
517 [미디어위키] 비밀번호 재설정 (SMTP) 기능이 작동하지 않음 1 260578 18.03.03.19:37 274
516 구글 광고를 등록하려고하는데.. 8 image 막시모 19.06.26.09:02 274
515 창 크기에 따라서 표의 크기가 달라지는 태그는 없나요? 6 image 국내산라이츄 19.08.05.17:41 274
514 호스팅 미디어위키 5 맛수타 17.05.07.16:51 275
513 스레드식 게시판 프로그램좀 추천해주세요. 4 260578 18.05.20.19:53 275
512 trumbowyg 에디터를 그누보드 아미나빌더에 삽입중입니다. 10 홀민 19.01.25.00:38 275
511 데이터베이스 연결.. 제발 도와주세요 ㅠ.. 2 준그루 17.08.10.22:50 276
510 포인트 폭탄 포인트 지급 안되엇내요 9 image 핫슈 20.05.08.20:17 276
509 회원가입 이 외안되는거애요? 5 핫슈 16.10.14.19:01 277
508 호스팅 트래픽 초과되면 어떻게 해야하나요?? 8 title: 도밥위키!Dobob 17.05.24.18:43 277
507 우분투의 crontab을 관리하는 노하우나 툴이 있을까요? 14 이니스프리 18.11.07.00:27 277