ec(2); 数字验证码 /* * Filename: authpage.php */ session_start(); // srand((double)microtime()*1000000); $authnum = $_SESSION[''authnum'']; //验证用户输入是否和验证码一致 if(isset($_POST[''authinput''])) { if(strcmp($_POST[''authinput''],$_SESSION[''authnum''])==0) echo "验证成功!"; else echo "验证失败!"; } //生成新的四位整数验证码 // while(($authnum=rand()%10000) ?> form action=test4.php method=post> table> 请输入验证码:input type=text name=authinput style="width: 80px">br> input type=submit name="验证" value="提交验证码"> input type=hidden name=authnum value= echo $authnum; ?>> img src=authimg.php?authnum= echo $authnum; ?>> table> form> authimg.php php //生成验证码图片 Header("Content-type: image/PNG"); srand((double)microtime()*1000000);//播下一个生成随机数字的种子,以方便下面随机数生成的使用session_start();//将随机数存入session中$_SESSION[''authnum'']="";$im = imagecreate(62,20); //制定图片背景大小$black = ImageColorAllocate($im, 0,0,0); //设定三种颜色$white = ImageColorAllocate($im, 255,255,255); $gray = ImageColorAllocate($im, 200,200,200); imagefill($im,0,0,$gray); //采用区域填充法,设定(0,0)while(($authnum=rand()%100000)10000);//将四位整数验证码绘入图片 $_SESSION[''authnum'']=$authnum;imagestring($im, 5, 10, 3, $authnum, $black);// 用 col 颜色将字符串 s 画到 image 所代表的图像的 x,y 座标处像的左上角为 0, 0)。//如果 font 是 1,2,3,4 或 5,则使用内置字体for($i=0;$i200;$i++) //加入干扰象素 { $randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255)); imagesetpixel($im, rand()%70 , rand()%30 , $randcolor); }ImagePNG($im); ImageDestroy($im); ?>