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

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

<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 마스터 6일 전16:25 222
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 7282
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4771
406 미디어 위키 에러 질문입니다. 8 NoYeah 18.08.24.22:27 281
405 html 이미지 크기 조절 질문드립니다.. 4 swimmie 18.08.24.17:48 698
404 와이파이 접속 불가 현상 관련 17 image 네모 18.08.24.10:17 1451
403 php로 협업필터링을 구현할 수 있나요? 4 title: 에그joyful 18.08.23.17:04 403
402 스포어 호스팅 관련.. 2 Tilto_ 18.08.21.21:00 283
401 스포어 호스팅은 자바를 지원하나요? 5 샹키 18.08.21.02:28 200
400 [스포어] 원래 사용하고있던 서비스를 다른곳으로 옮기고 이 곳에 개인 블로그와 메모장을 만드려고 합니다. 1 260578 18.08.14.09:05 175
399 도메인 설정이 잘 되지 않아 질문드립니다 1 ndbdbbn 18.08.10.19:22 219
398 안드로이드 어플 개발은 어떤언어가 필요하나요? 6 샹키 18.08.06.18:19 597
397 vmware esxi 환경에서 xpenology 를 운영하시는 회원님 계신가요 ? 2 image xnview 18.08.05.00:43 238
396 https를 쓰고 싶습니다 5 MYIG 18.08.02.18:51 225
395 php 검색 기능 도와주세요 8 title: 에그joyful 18.08.01.22:25 224
394 [우분투] 크롬에서 일부 글자가 꺠져서 나옵니다. 3 image 국내산라이츄 18.07.27.22:55 206
393 [스포어] 404, 403, 500페이지를 편집 할 수 있나요? 2 260578 18.07.26.12:11 176
392 지식없이 네이버 카페 대문을 제작해보려는데 너무 힘드네요. image 도바킨 18.07.26.01:29 299
391 오류페이지 변경 5 STULAB 18.07.25.23:38 225
390 ftp 계정명 질문 20 image STULAB 18.07.24.16:10 257
389 [미디어위키] 회원가입시 반드시 이메일 인증을 하게 하려면 뭐가 필요한가요? 260578 18.07.24.14:28 198
388 ftp 오류 3 image nx_OP 18.07.22.14:07 820
387 C++에 도움이 필요합니다. 8 Tilto_ 18.07.20.21:21 198