欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

汉字验证码和算式验证码,汉字验证码算式

程序员文章站 2022-05-29 16:30:49
...

汉字验证码和算式验证码,汉字验证码算式

大家知道简单数字或者字母验证码很容易被破解,但是算式验证码或者中文汉字验证码不容易被破解,

所以建议大家在使用验证码的时候,尽量用算式验证码或者中文汉字验证码。

下面是我写的两种验证码代码,有用到的朋友可以参考下:

原文转载自:http://www.phpskill.com/html/show-1-4410-1.html

1.算式验证码:

php
session_start();
header("Content-type: image/png");

$num1 = mt_rand(0,9);//第一位数
$num2 = mt_rand(1,9);//第二位数

$type_str = "+-*";//方法字符串集合
$type = substr($type_str,rand(0,2),1);//随机方法

$change = mt_rand(1,3);

if($change==1){
    $code = "$num1$type$num2=?";
    $result = "\$verifyCode=$num1$type$num2;";
    eval($result);

    $_SESSION['authnum_session'] = $verifyCode;  
}elseif($change==2){
    $result = "\$verifyCode=$num1$type$num2;";
    eval($result);
    $code = $num1.$type."_=".$verifyCode;
    $_SESSION['authnum_session'] = $num2;  

}elseif($change==3){
    $result = "\$verifyCode=$num1$type$num2;";
    eval($result);
    $code = "_".$type.$num2."=".$verifyCode;
    $_SESSION['authnum_session'] = $num1;  
}



$im = imagecreate(68,28);   
$black = imagecolorallocate($im, 0,0,0);     
$white = imagecolorallocate($im, 255,255,255);
$gray = imagecolorallocate($im, 200,200,200);
$red = imagecolorallocate($im, 255, 0, 0);

imagefill($im,0,0,$white);           
imagestring($im, 5, 10, 8, $code, $black);    
      
for($i=0;$i$i
相关标签: 登陆界面