메뉴 건너뛰기

프로그램언어

조회 수 272 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

구글API를 이용하여 reCaptcha 캡차를 이용하면 편리하지만 간단히 만드는 방법을 알아보자

 

 

폰트는 tving 에서 다운받아요

http://tvn10festival.tving.com/playground/tvn10font

<?
session_start();

// 세션변수 생성
function set_session($session_name, $value)
{
    if (PHP_VERSION < '5.3.0')
        session_register($session_name);
    $$session_name = $_SESSION[$session_name] = $value;
}
//이미지 크기
$img = imagecreate(130,60);

//캡챠 폰트 크기
$size = 46;
//캡챠 폰트 기울기
$angle = 0;
//캡챠 폰트 x,y위치
$x = 5;
$y = 50;
//이미지의 바탕화면은 흰색
$background = imagefill($img,0,0,imagecolorallocatealpha($img,255, 255, 255, 100));
//폰트 색상
$text_color = imagecolorallocate($img, 233, 14, 91);
//폰트 위치
$font = 'kcaptcha/fonts/tvn_bold.ttf';

//캡챠 텍스트
$str = substr(md5(rand(1,10000)),0,5);
//가입 시 캡챠 텍스트 확인을 위해 session에 담는다.
//$_SESSION['captchastr'] = $str;
set_session("captchastr",$str);

//글자를 이미지로 만들기
imagettftext($img,$size,$angle,$x,$y,$text_color,$font,$str);

Header("Content-type: image/jpeg");
imagejpeg($img,null,100);
imagedestroy($img);
?>
 

set_session("captchastr") 로 저장된 값을 입력한 값과 비교하여 스팸방지 캡차코드를 구연할 수 있다.

 

html 내용

<div class="f-div"><label>스팸방지코드</label></div>
<div class="l-div"><img src="/captcha.php" />
<input type="text" size="8" maxlength="10" name="spamcaptchacode"  placeholder="스팸방지코드를 입력하세요" />
</div>

 


List of Articles
번호 제목 날짜 조회 수
320 CodeIgniter에서 PHPExcel 사용하기 file 2017.03.06 20292
319 csv파일 다루기. fputcsv(), fgetcsv() 2021.03.26 560
318 cUrl를 이용한 json 데이타 주고 받기 2020.09.28 1260
317 curl을 이용하여 post, get 방식 으로 데이터 전송하기 2023.01.12 341
316 current() next() key() 그외 배열관련 함수 2021.03.26 255
315 date() 함수의 출력 형식 2021.03.26 247
314 DAUM 지도 API 좌표→주소(주소->좌표) 변환 2020.10.05 435
313 DB 내용을 화면에 출력(이중 for 문) 2015.04.14 21254
312 DB 연동 4단 셀렉트 박스 2018.09.28 6095
311 DB상의 많은 파일을 한꺼번에 다운받기 2014.02.27 28338
310 dddotag - 허용하지 않는 태그 걸러내기 2019.01.16 1857
309 Drag/Drop HTML elements 2014.03.26 19537
308 ereg(), eregi(), ereg_replace(), eregi_replace(), split() 대체 2023.01.12 231
307 explode - 문자열 나눔 2016.12.23 19945
306 fcm 푸시 알림 php 테스트 2018.07.19 6065
305 fileatime 파일에 최종적으로 접근한 시간을 반환 2016.12.23 18125
304 fopen 파일 열기 2015.04.14 20306
303 FPDF - PHP로 PDF 만들기 2014.02.27 21089
302 gcm 푸시 알림 php 테스트 2018.07.19 5586
301 gd_info 사용 가능한 GD 라이브러리에 대한 정보를 배열로 반환 2016.12.23 17995
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved