나는 안티 스팸 솔루션을 구현하기위한이 코드에 의견이 필요합니다 : 페이지/폼이 생성 될 때PHP - 보안 문자 교체
가- 는, 임의의 문자열이 생성된다, 예를 들면.
$string = md5($_SERVER['REMOTE_ADDR'])
- 이 문자열 그래서 우리는 페이지로드에 데이터베이스
- 를 기입하지 않는 데이터베이스에 삽입하고, 이후에 만료의 2 시간을 말할 수 있도록 설정되어 같은 양식의하자, 값이없는 숨겨진 입력 필드가 이름 페이지가 AJAX 요청로드 그것을
spam_check
- 10, 15 또는 20 초 후에 자동 & DB에서 검색하는
$string
함께spam_check
입력 값을 기입하는 것을 시도 오프 발사. 양식이 제출 때이 메시지가 스팸 일치하지 않는 경우 - , 우리는
이 좋은 생각인가 ...,하여 DB에서 $string
와 $_POST['spam_check']
간의 간단한 검사를 수행? 얼마나 안전합니까? 명백한 장점은하지가 방문자에서, 그 $string
있기 때문에 보안 문자 등
나는 그것이 스팸 일지라도 스팸 도구가 HTML 코드를 받아서 그에 따라 게시물을 작성하기 때문에 그 값이 정확할 것이라고 혼란 스럽습니다. 내가 틀렸어? – Pabuc
잘 생각하면 스팸 봇은 javascript를하지 않으며 양식을 제출하기 전에 10 초 동안 기다리지 않습니다. – Alex
사용자가 매우 빠르게 입력 할 수있는 경우 문제가 발생할 수 있습니다. – robjmills