XHTML   CSS

TODAY 1,436
TOTAL 1,730,793

AJAX를 활용한 스팸방지코드 실시간 검사 구현예제

사용방법 8번

NAME지앤미 TIME2009-09-30/08:46:16READ13740
TAGPOP0

AJAX란 무엇인가?

'AJAX'는 Asynchronous Javascript And XML(비동기 자바 스크립트와 XML)의 약자로, 쉽게 말해서 폼값을 다른 웹페이지로 전송하여 페이지 이동 후에 결과값을 가져오는 기존의 방식과는 달리, 페이지 이동 없이 처리결과를 가져오는 기술을 말합니다.

AJAX의 대표적 활용 예

2009년 현재, 많은 웹서비스에서 AJAX를 활용하고 있습니다. 예를 들면,
① 구글맵, 네이버지도, 다음지도 등 : 마우스 드래그로 지도 이동
② 네이버 등 회원가입시 : 페이지 이동 없이 아이디 중복검사
③ 메일 쓰기시 임시저장 : 페이지 이동 없이 특정 시간 후에 메일 내용을 임시저장

등이 대표적인 활용 예이지요.

지엠스팸프리(ZmSpamFree)의 AJAX 활용 예제

아무튼, 게시판과 같은 폼 전송 전에 폼 값 검사(예를 들어, '이름을 입력해 주세요.'라는 문구를 보여주는 것)를 자바스크립트로 구현한 것들은 쉽게 보셨을 것입니다.
이와 같이 지엠스팸프리(ZmSpamFree)의 스팸방지코드도 자바스크립트를 이용하여, 페이지 이동 없이 사용자가 입력한 코드를 검사할 수 있습니다.
이미 본 홈페이지 첫 화면에 구현되어 있지만, 여러가지 다른 기능들과 함께 섞여있어 분석하는데 어려움이 있을 것 같아, 오로지 이 기능만 따로 뽑아 예제로 공개합니다. 아래 링크를 클릭해서 확인해 주세요.

☞ AJAX를 활용한 스팸방지코드 실시간 검사 구현예제

구현시 주의사항

1. 위와 같이 AJAX로 스팸방지코드를 체크했다고 해서 write_ok.php 부분에 php로 실행되는 스팸방지코드 검사루틴을 빼 먹으면 안 됩니다.
자바스크립트의 폼 체크는 사실상, 정상적인 이용자의 편의를 도모하기 위함이지,
이를 악용하고자 하는 이들은, 얼마든지 모든 폼값을 임의로 변경할 수 있기 때문입니다.
심지어 자바스크립트의 체크를 모두 무효화하고 폼값을 넘기려는 시도들도 충분히 가능하기 때문에
php로, 즉, 서버단에서 체크를 해 주는 것은 필수사항입니다.

2. AJAX로 스팸방지코드를 체크할 때, 틀렸을 경우에는 즉시 문제를 다른 문제로 바꿔 주어야 합니다. 이 또한 보안상 문제로, 틀렸을 경우에도 다른 문제로 바뀌지 않는다면, 스팸봇은 몇 번이고 한 문제에 대해 여러가지 값을 대입하며 맞추려는 시도가 가능하게 됩니다.
단, 맞았을 경우에는 문제가 다른 문제로 바뀌면 안 됩니다. 맞았을 경우에도 다른 문제로 바뀌게 된다면, 당연히 폼값을 넘겼을 때 스팸방지코드가 틀렸다고 나오겠지요. ^^

위의 주의사항을 모두 적용한 구현예제가 위에 언급한 링크입니다.
참고하셔서 더욱 편리한 사용자환경을 만들어 보세요. ^^

2009-09-30/09:09:47 last modified.

사용방법

NoCatSubjectDateRead
9 설치 프로그램 다운 후 설치 방법 (Ver. 1.1) 2009-11-02 14654
8 활용 AJAX를 활용한 스팸방지코드 실시간 검사 구현예제 2009-09-30 13741
7 안내 제로보드 아닌 다른 프로그램 적용방법 2009-01-14 10659
6 정보 스팸차단코드 이미지의 내부 오류 메시지 종류 2008-11-18 13546
5 활용 제로보드4 적용방법 2008-11-02 24174
4 정보 환경설정 방법 2008-11-02 10587
3 정보 파일 구성 및 역할 2008-11-01 6109
2 정보 본 프로그램의 특징 2008-10-31 6277
1 설치 프로그램 다운 후 설치 방법 (Ver. 1.0) 2008-10-31 19344

Elapsed 1.3982 sec.