なぜ独自のキャプチャが必要なのですか? ReCaptcha ですよね?
Ok..
// generate random number and store in session
$randomnum = rand(1000, 9999);
$_SESSION['randomnum'] = md5($randomnum);
//generate image
$im = imagecreatetruecolor(100, 38);
//colors:
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 200, 35, $black);
//path to font:
$font = 'fonts/font.ttf';
//draw text:
imagettftext($im, 35, 0, 22, 24, $grey, $font, $randomnum);
imagettftext($im, 35, 0, 15, 26, $white, $font, $randomnum);
// prevent client side caching
header("Expires: Wed, 1 Jan 1997 00:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
//send image to browser
header ("Content-type: image/gif");
imagegif($im);
imagedestroy($im);
そしてフォーム
<form method="post" action="write.php">
<input class="input" type="text" name="norobot" />
<img src="captcha.php" />
<input type="submit" value="Submit" />
</form>
そして write.php
session_start();
if (md5($_POST['norobot']) == $_SESSION['randomnum2']) {
// here you place code to be executed if the captcha test passes
echo "Hey great , it appears you are not a robot";
} else {
// here you place code to be executed if the captcha test fails
echo "you're a very naughty robot!";
}