Heim >php教程 >php手册 >php验证码程序代码

php验证码程序代码

WBOY
WBOYOriginal
2016-05-25 16:41:201394Durchsuche

网上生成php验证码程序用很多,下面我来给大家分享一款超不错的php验证码程序代码,有需要的朋友可参考,验证码识别一般分为以下几个步骤:1. 取出字模,2. 二值化,3. 计算特征,4. 对照样本.

php验证码程序代码如下:

<?php
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);
}
//验证码使用方法
$getcode = $_POST[&#39;code&#39;];
if ($_SESSION["code"] = $getcode) {
    echo &#39; 验证合法,进入下一步&#39;;
    unset($_SESSION["code"]);
} else {
    echo &#39; 验证码不正确&#39;;
    header(&#39;location:vial.php&#39;);
}


本文地址:

转载随意,但请附上文章地址:-)

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn