首页 > php开发 > php jquery 验证码代码

php jquery 验证码代码

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

<?php 
//调用此页面,如果下面的式子成立,则生成验证码图片 
if($_get['action']=='verifycode'){ 
    rand_create(); 
} 
//验证码图片生成 
function rand_create(){ 
    //通知浏览器将要输出png图片 
 
    header('content-type: image/png'); 
 
    //准备好随机数发生器种子  
    srand((double)microtime()*1000000); 
    //准备图片的相关参数  
    $im = imagecreate(62,20); 
    $black = imagecolorallocate($im, 0,0,0); //rgb黑色标识符 
    $white = imagecolorallocate($im, 255,255,255); //rgb白色标识符 
    $gray = imagecolorallocate($im, 200,200,200); //rgb灰色标识符 
    //开始作图     
    imagefill($im,0,0,$gray); 
    while(($randval=rand()%100000)<10000);{  
        //将四位整数验证码绘入图片 
     session_start(); 
   $_session['login_check_num'] = $randval;  
        imagestring($im, 5, 10, 3, $randval, $black); 
    }  
    //加入干扰象素  
    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); 
    } 
    //输出验证图片 
    imagepng($im); 
    //销毁图像标识符 
    imagedestroy($im);  
}

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

验证码:<input class="reg_main_code_input" type="text" name="reg_code" id="reg_code" /> 

<img id="reg_code_img" src="code.php?action=verifycode" />  

jquery部分的ajax验证代码为:

$.post("session.php", 
      {reg_code:$("#reg_code").val()}, 
      function(data){ 
      if(data === "1"){ 
       //do... 
      }else{ 
       do...      } 
    } 
);

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

<?php 
session_start(); 
//检验验证码 
if($_post['reg_code'] == $_session['login_check_num']){ 
   echo 1;//开源代码phprm.com 
}else{ 
   echo 0; 
   exit(); 
}

                     


文章网址:http://www.phprm.com/develop/fs5731.html

随意转载^^但请附上教程地址。

标签:php验证码 jquery验证码

相关文章

发表留言