验证码:'style="width:100px;height:30px"/>改变?一个>一个>请输入验证码:p>
p>body>html> 从index.html可以看出,提交的表单是到form.php的,所以form.php也有一个判断代码:phpheader("Content-Type:text/html;charset=utf-8");//设置头信息//isset()检测变量是否设置if(isset($_REQUEST['authcode'])){session_start();//strtolower()lowercaseFunctionif(strtolower($_REQUEST['authcode'])==$_SESSION['authcode']){//跳转页面echo"";}else{//提示并跳转页面echo"";}exit();} 展示页面如下: 然后,实现ofpurenumbers给英文加数字应该不难。需要修改的代码只是将captcha.php中的//7>生成随机数改为//7>生成随机字母和数字。如果你真的很可爱,修改一下如果这几个字也算是可以实现的话,那么恭喜你,你会一直幸福下去的。脑残儿童玩得很开心。 废话不多说,我们来拉取代码。 php//10>设置session,必须在脚本最前面session_start();$image=imagecreatetruecolor(100,30);//1>设置验证码图片大小的函数//5>设置验证码颜色imagecolorallocate(intim,intred,intgreen,intblue);$bgcolor=imagecolorallocate($image,255,255,255);//#ffffff//6>区域填充intimagefill(intim,intx,inty,intcol)(x,y)coloring,col表示要绘制的颜色imagefill($image,0,0,$bgcolor);//10>设置变量$captcha_code="";//7>生成随机字母和数字for($i=0;$i<4;$i++){//设置字体大小$fontsize=8;//设置字体颜色,颜色随机$fontcolor=imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120));//0-120深颜色//设置需要随机选择的值,去掉0和o$data='abcdefghigkmnpqrstuvwxy3456789'等容易出错的值;//得到值,字符串strlen获取字符串长度的截取方法$fontcontent=substr($data,rand(0,strlen($data)),1);//10>.=连续定义variable$captcha_code.=$fontcontent;//设置坐标$x=($i*100/4)+rand(5,10);$y=rand(5,10);imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor);}//10>保存到session$_SESSION['authcode']=$captcha_code;//8>加入干扰元素,设置雪花点为($i=0;$i<200;$i++){//设置点的颜色,50-200颜色比数字浅,不干扰??阅读$pointcolor=imagecolorallocate($image,rand(50,200),rand(50,200),rand(50,200));//imagesetpixel—绘制单个像素imagesetpixel($image,rand(1,99),rand(1,29),$pointcolor);}//9>添加干扰元素,设置横线为($i=0;$i<4;$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);}//2>设置表头,image/pngheader('Content-Type:image/png');//3>imagepng()建立png图形函数imagepng($image);//4>imagedestroy()结束图形函数destroy$imageimagedestroy($image); 其他两个页面不允许修改 总的来说,现在已经够用了。但就像动漫一样,总会有支线故事。 那么,来一出汉字插曲吧。其实我也打算把汉字的验证码放在我的毕业设计中。虽然现在很流行滑动验证码,但是我毕竟不是专门学js的。 另外,你也可以告诉答题老师,我们的验证码不需要素材,连图片都是生成的,不需要用自己的知识去安装13。 php//11>设置session,必须在脚本的最前面session_start();//1>设置验证码图片大小的函数$image=imagecreatetruecolor(200,60);//5>设置验证码颜色imagecolorallocate(intim,intred,intgreen,intblue);$bgcolor=imagecolorallocate($image,255,255,255);//#ffffff//6>区域填充intimagefill(intim,intx,inty,intcol)(x,y)coloring,col表示要绘制的颜色imagefill($image,0,0,$bgcolor);//7>设置ttf字体$fontface='FZYTK.TTF';//7>设置字体库为实现简单数字储备$str='天地不仁,万物如草狗,圣人不仁,百姓如草狗。这句话经常出现在对暴君暴政的指责中。残暴不仁者视万物为卑贱的猪狗,那些高高在上的所谓圣人也不例外。不是说我们普通人不如猪狗,而是正确的解释是,地球对万物不一视同仁,圣人对人也不一视同仁。牵手白头到老,男女主深情对视,说了句牵手白头到老女人含着泪回答,讨厌。我们见过很多这样的情节吗?但是,让我们看一下这句话的原句。不,我活着,我活着,我不,我信,意思是军人之间的约定,就是同归于尽,现在约定好的人都走了,我怎么活?赤裸裸的兄弟,战友,友情,很好的描述。朋友之间的友情比男女之间的爱情更合适;//str_split()将字符串切割成数组,utf_8中一个汉字为3个字符$strdb=str_split($str,3);/>11$captcha_code='';//8>Generaterandommanfor($i=0;$i<4;$i++){//设置字体颜色,随机颜色$fontcolor=imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120));//0-120深颜色//随机选择中文$in=rand(0,count($strdb));$cn=$strdb[$in];//将中文记录到字符串中,保存到session$captcha_code.=$cn;/*imagettftext(resource$image,float$size,float$angle,int$x,int$y,int$color,string$fontfile,string$text)curtain,size,angle,coordinates,color,fontpath,textstringmt_rand()生成更好的随机数,比rand()*/imagettftext($image,mt_rand(20,24),mt_rand(-60,60),(40*$i+20),mt_rand(30,35),$fontcolor,$fontface,$cn);}//11>保存到session$_SESSION['authcode']=$captcha_code;//9>添加干扰元素,setpointfor($i=0;$i<200;$i++){//设置点的颜色,50-200颜色比number,不干扰读取$pointcolor=imagecolorallocate($image,rand(50,200),rand(50,200),rand(50,200));//imagesetpixel—绘制单个像素imagesetpixel($image,rand(1,199),rand(1,59),$pointcolor);}//10>添加干扰元素,设置线条为($i=0;$i<4;$i++){//设置线条颜色$linecolor=imagecolorallocate($image,rand(80,220),rand(80,220),rand(80,220));//设置直线,两点一线imageline($image,rand(1,199),rand(1,59),rand(1,199),rand(1,59),$linecolor);}//2>设置表头,image/pngheader('Content-Type:image/png');//3>imagepng()建立png图形函数imagepng($image);//4>imagedestroy()结束图形函数销毁$imageimagedestroy($image);?其他页面无需修改 效果图如下: