好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php生成验证码与验证码验证完整实例 - 综合实例

php生成验证码与验证码验证完整实例

html页面,代码如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://HdhCmsTestw3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >   < html   xmlns = "http://HdhCmsTestw3.org/1999/xhtml" >   < head >   < meta   http-equiv = "Content-Type"   content = "text/html; charset=utf-8"   />   < title > PHP验证码实例 </ title >   < script   language = "javascript" >    function refresh_code()   {     form1.imgcode.src = "verifycode.php?a=" +Math.random();   }  </ script >   </ head >   < body >   < form   id = "form1"   name = "form1"   method = "post"   action = "checkcode.php" >      < label   for = "code" > 验证码: </ label >      < input   type = "text"   name = "code"   id = "textfield"   />      < img   id = "imgcode"   src = "VerifyCode.php"   alt = "验证码"   />      < a   href = "javascript:refresh_code()" > 看不清?换一个 </ a >      < input   type = "submit"   name = "button"   id = "button"   value = "提交"   />   </ form >   </ body >   </ html >  

verifycode.php文件代码如下:

<?php    /*     图片验证码 Powered By KASON      */     session_start();     $num =4; //验证码个数      $width =80; //验证码宽度      $height =20; //验证码高度      $code = ' ' ;     for ( $i =0; $i < $num ; $i ++) //生成验证码     {      switch (rand(0,2))     {       case  0: $code [ $i ]= chr (rand(48,57)); break ; //数字        case  1: $code [ $i ]= chr (rand(65,90)); break ; //大写字母        case  2: $code [ $i ]= chr (rand(97,122)); break ; //小写字母      }    }     $_SESSION [ "VerifyCode" ]= $code ;     $image =imagecreate( $width , $height );    imagecolorallocate( $image ,255,255,255);     for ( $i =0; $i <80; $i ++) //生成干扰像素     {      $dis_color =imagecolorallocate( $image ,rand(0,2555),rand(0,255),rand(0,255));     imagesetpixel( $image ,rand(1, $width ),rand(1, $height ), $dis_color );    }     for ( $i =0; $i < $num ; $i ++) //打印字符到图像     {      $char_color =imagecolorallocate( $image ,rand(0,2555),rand(0,255),rand(0,255));     imagechar( $image ,60,( $width / $num )* $i ,rand(0,5), $code [ $i ], $char_color );    }    header( "Content-type:image/png" );    imagepng( $image ); //输出图像到浏览器     imagedestroy( $image ); //释放资源   ?> 

checkcode.php文件如下:

<meta http-equiv= "Content-Type"  content= "text/html; charset=utf-8"  />  <?php  ini_set ( 'display_errors' ,  'Off' );  session_start();     if (( strtoupper ( $_POST [ "code" ])) ==  strtoupper (( $_SESSION [ "VerifyCode" ]))){   print( "验证码正确," );    } else {      print( "验证码错误," );    }     echo   "提交的验证码:" . strtoupper ( $_POST [ "code" ]). ",正确的验证码:" . strtoupper ( $_SESSION [ "VerifyCode" ]);  ?> 

查看更多关于php生成验证码与验证码验证完整实例 - 综合实例的详细内容...

  阅读:44次