网上多的是,一搜一大片:这个是我写的,干扰象素加的不好,容易被ocr识别:
//verification.php
<?php
header("Content-type: image/gif");
session_start();
while(($verification=rand()%100000)<10000);
$_SESSION['verification'] = $verification;
$im = imagecreate(62,20);
$black = ImageColorAllocate($im, 0,0,0);
$white = ImageColorAllocate($im, 255,255,255);
$gray = ImageColorAllocate($im, 200,200,200);
imagefill($im,68,30,$gray);
imagestring($im, 5, 10, 3, $verification, $white);
for($i=0;$i<200;$i++)
{
$randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imagesetpixel($im, rand()%70 , rand()%30 , $randcolor);
}
Imagegif($im);
ImageDestroy($im);
?>在你的表单验证页面,将用户输入的验证码与$_SESSION['verification']比较一下即可。如果觉得干扰象素加的不好,可以去网上搜索一下。
//verification.php
<?php
header("Content-type: image/gif");
session_start();
while(($verification=rand()%100000)<10000);
$_SESSION['verification'] = $verification;
$im = imagecreate(62,20);
$black = ImageColorAllocate($im, 0,0,0);
$white = ImageColorAllocate($im, 255,255,255);
$gray = ImageColorAllocate($im, 200,200,200);
imagefill($im,68,30,$gray);
imagestring($im, 5, 10, 3, $verification, $white);
for($i=0;$i<200;$i++)
{
$randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imagesetpixel($im, rand()%70 , rand()%30 , $randcolor);
}
Imagegif($im);
ImageDestroy($im);
?>在你的表单验证页面,将用户输入的验证码与$_SESSION['verification']比较一下即可。如果觉得干扰象素加的不好,可以去网上搜索一下。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货