文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>PHP生成验证码的原理

PHP生成验证码的原理

时间:2007-06-11  来源:linxh

   验证码的实现原理是在服务器端产生一个随机字符串,然后保存在服务器中,以图形方式发送到客户端。客户端在登录的时候输入验证码,如果与服务器端保存的验证码一致,则通过验证;否则重新生成一个验证码发送到客户端。每次的验证码是随机生成的。

下面是一个简单的示例


?php
/*
* Filename: reg_png.php
*/
session_start();
//生成验证码图片
Header("Content-type: image/PNG");
srand((double)microtime()*1000000);
$im = imagecreate(50,20);
$black = ImageColorAllocate($im, 0,0,0);
$white = ImageColorAllocate($im, 255,255,255);
$gray = ImageColorAllocate($im, 200,200,200);
imagefill($im,0,0,$gray);
//将四位整数验证码绘入图片
$auth_num=$_SESSION['auth_num'];
$_SESSION['last_auth']=$auth_num;
imagestring($im, 5,0,0, $auth_num, $black);
for($i=0;$i100;$i++) //加入干扰象素
{
        imagesetpixel($im, rand()%70 , rand()%30 , $black);
}
ImagePNG($im);
ImageDestroy($im);
?>

?php
/*
* Filename: reg.php
*/
session_start();
srand((double)microtime()*1000000);
while(($authnum=rand()%10000)1000);
$_SESSION['auth_num']=$authnum;
//检查验证码是否有效
if($_REQUEST['auth_num']==$_SESSION['last_auth']) {
/*....*/
}
else {
        echo "";
        echo "";
        echo "alert('验证码不准确,请重新输入');";
        echo "";
    }
}
?>


相关阅读 更多 +
排行榜 更多 +
jojo的奇妙冒险手机版下载

jojo的奇妙冒险手机版下载

飞行射击 下载
雪糕工厂 v9.87.13.02 安卓版

雪糕工厂 v9.87.13.02 安卓版

休闲益智 下载
雪糕工厂 v9.87.13.02 安卓版

雪糕工厂 v9.87.13.02 安卓版

休闲益智 下载