一、新建captcha.php,写入以下代码:
/*--创建一个大小为 100*30 的验证码--*/
session_start();
$image = imagecreatetruecolor(100, 30);
$bgcolor = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $bgcolor);
$captch_code = '';
for($i=0;$i<4;$i++) {
$fontsize = 6;
$fontcolor = imagecolorallocate($image, rand(0, 120), rand(0, 120),rand(0, 120));
$data = 'abcdefghijkmnpqrstuvwxy3456789';
$fontcontent = substr($data, rand(0, strlen($data)-1), 1);
$captch_code .= $fontcontent;
$x = ($i*100/4) + rand(5, 10);
$y = rand(5, 10);
imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);
}
$_SESSION['authcode'] = $captch_code;
//增加点干扰元素
for($i=0; $i<200;$i++) {
$pointcolor = imagecolorallocate($image, rand(50,200), rand(50,200), rand(50,200));
imagesetpixel($image, rand(1,99), rand(1,29), $pointcolor);
}
//增加线干扰元素
for($i=0;$i<3;$i++) {
$linecolor = imagecolorallocate($image, rand(80,220), rand(80,220), rand(80, 220));
imageline($image, rand(1,99), rand(1,29), rand(1,99), rand(1,29), $linecolor);
}
header('content-type:image/png');
imagepng($image);
imagedestroy($image);
?>
二、新建form.php,写入以下代码:
if(isset($_REQUEST['authcode'])) {
session_start();
if(strtolower($_REQUEST['authcode']) == $_SESSION['authcode']) {
echo "输入正确!";
} else {
echo "输入错误!";
}
exit();
}
?>
确认验证码验证码图片:
换一个?
请输入图片中的内容:
了解更多,请查看
http://www.imooc.com/learn/115。