当前位置:首页 > PHP教程 > php应用 > 列表

php jquery 验证码代码

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-20 08:48:46 浏览: 评论:0 

本教程主要利用jquery 的ajax来实现无刷新jquery php验证码代码的提前验证操作,实例代码如下:

  1. <?php 
  2. //调用此页面,如果下面的式子成立,则生成验证码图片 
  3. if($_get['action']=='verifycode'){ 
  4.     rand_create(); 
  5. //验证码图片生成 
  6. function rand_create(){ 
  7.     //通知浏览器将要输出png图片 
  8.  
  9.     header('content-type: image/png'); 
  10.  
  11.     //准备好随机数发生器种子  
  12.     srand((double)microtime()*1000000); 
  13.     //准备图片的相关参数  
  14.     $im = imagecreate(62,20); 
  15.     $black = imagecolorallocate($im, 0,0,0); //rgb黑色标识符 
  16.     $white = imagecolorallocate($im, 255,255,255); //rgb白色标识符 
  17.     $gray = imagecolorallocate($im, 200,200,200); //rgb灰色标识符 
  18.     //开始作图     
  19.     imagefill($im,0,0,$gray); 
  20.     while(($randval=rand()%100000)<10000);{  
  21.         //将四位整数验证码绘入图片 
  22.      session_start(); 
  23.    $_session['login_check_num'] = $randval;  
  24.         imagestring($im, 5, 10, 3, $randval$black); 
  25.     }  
  26.     //加入干扰象素  
  27.     for($i=0;$i<200;$i++){ 
  28.         $randcolor = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255)); 
  29.         imagesetpixel($im, rand()%70 , rand()%30 , $randcolor); 
  30.     } 
  31.     //输出验证图片 
  32.     imagepng($im); 
  33.     //销毁图像标识符 
  34.     imagedestroy($im);  
  35. ?> 

静态页面上显示验证码代码为:

  1. 验证码:<input class="reg_main_code_input" type="text" name="reg_code" id="reg_code" /> 
  2. <img id="reg_code_img" src="code.php?action=verifycode" />  

jquery部分的ajax验证代码为:

  1. $.post("session.php"
  2.       {reg_code:$("#reg_code").val()}, 
  3.       function(data){ 
  4.       if(data === "1"){ 
  5.        //do... 
  6.       }else
  7.        do...      } 
  8.      } 
  9.     );  

而协助ajax验证的php页面名为session.php,其代码如下:

  1. <?php 
  2. session_start(); 
  3. //检验验证码 
  4. if($_post['reg_code'] == $_session['login_check_num']){ 
  5.    echo 1;//开源代码phpfensi.com 
  6. }else
  7.    echo 0; 
  8.    exit(); 
  9. ?>

Tags: jquery验证码 php验证码

分享到: