Home >Backend Development >PHP Tutorial >A simple PHP verification code program code_PHP tutorial

A simple PHP verification code program code_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 17:11:06836browse

There are many programs for generating PHP verification codes online. Now I will share with you a super good PHP verification code program code. Friends in need can refer to it.

Verification code recognition is generally divided into the following steps:

1. Take out the font
2. Binarization
3. Calculate features
4. Control sample

function _code($_code_length = 4, $_width = 75, $_height = 25){ for($i=0;$i<$_code_length;$i++){
The code is as follows
 代码如下 复制代码


function _code($_code_length = 4, $_width = 75, $_height = 25){
    for($i=0;$i<$_code_length;$i++){
        $_nmsg .= dechex(mt_rand(0,15));
    }
    $_SESSION["code"] = $_nmsg;

    $_img = imagecreatetruecolor($_width, $_height);

    $_white = imagecolorallocate($_img, 250, 250, 250);

    imagefill($_img, 0, 0, $_white);

    $_gray = imagecolorallocate($_img, 196, 196, 196);

    imagerectangle($_img, 0, 0, $_width-1, $_height-1, $_gray);

    for ($i=0; $i < 6; $i++) {
        $_md_color = imagecolorallocate($_img, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255));
        imageline($_img, mt_rand(0,$_width), mt_rand(0, $_height),mt_rand(0,$_width), mt_rand(0, $_height), $_md_color);
    }

    for ($i=0; $i < 50; $i++) {
        $_md_color = imagecolorallocate($_img, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255));
        imagestring($_img, 1, mt_rand(1,$_width-5), mt_rand(1, $_height-5), "*", $_md_color);
    }

    for ($i=0; $i < $_code_length ; $i++) {
        $_md_color = imagecolorallocate($_img, mt_rand(0,102), mt_rand(0,102), mt_rand(0,102));
        imagestring($_img, 5, $i * $_width/$_code_length+ mt_rand(1, 10), mt_rand(1, $_height/2), $_SESSION["code"][$i], $_md_color);
    }

    header("Content-Type:image/png");

    imagepng($_img);

    imagedestroy($_img);
}

Copy code

 代码如下 复制代码

$getcode = $_POST['code'];

if( $_SESSION["code"] = $getcode )
{
  echo ' 验证合法,进入下一步';
  unset( $_SESSION["code"] );
}
else
{
  echo ' 验证码不正确';
  header('location:vial.php');
}

           $_nmsg .= dechex(mt_rand(0,15)); }

$_SESSION["code"] = $_nmsg;

$_white = imagecolorallocate($_img, 250, 250, 250); imagefill($_img, 0, 0, $_white); $_gray = imagecolorallocate($_img, 196, 196, 196); imagerectangle($_img, 0, 0, $_width-1, $_height-1, $_gray); for ($i=0; $i < 6; $i++) {           $_md_color = imagecolorallocate($_img, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255));
          imageline($_img, mt_rand(0,$_width), mt_rand(0, $_height),mt_rand(0,$_width), mt_rand(0, $_height), $_md_color); }
for ($i=0; $i < 50; $i++) {
          $_md_color = imagecolorallocate($_img, mt_rand(200,255), mt_rand(200,255), mt_rand(200,255)); Imagestring($_img, 1, mt_rand(1,$_width-5), mt_rand(1, $_height-5), "*", $_md_color); } for ($i=0; $i < $_code_length ; $i++) {           $_md_color = imagecolorallocate($_img, mt_rand(0,102), mt_rand(0,102), mt_rand(0,102)); imagestring($_img, 5, $i * $_width/$_code_length+ mt_rand(1, 10), mt_rand(1, $_height/2), $_SESSION["code"][$i], $_md_color); } header("Content-Type:image/png"); imagepng($_img); imagedestroy($_img); } How to use verification code
The code is as follows Copy code
$getcode = $_POST['code']; if( $_SESSION["code"] = $getcode ) { echo 'Verify it is legal, go to the next step'; unset( $_SESSION["code"] ); } else { echo 'The verification code is incorrect'; header('location:vial.php'); } http://www.bkjia.com/PHPjc/629627.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/629627.htmlTechArticleThere are many programs for generating PHP verification codes online. Let me share with you a very good PHP verification code program. Code, friends in need can refer to it. Verification code recognition is generally divided into the following steps...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn