PHP生成圖形驗證碼(大小寫字母與數字混合)

dkg654 9年前發布 | 2K 次閱讀 PHP

<?php
    header("content-type:image/png");
    $num = $_GET['num'];
    $imagewidth=60;
    $imageheight=18;
    srand(microtime() * 100000);

$numimage = imagecreate($imagewidth,$imageheight);
imagecolorallocate($numimage,183,180,83);
for($i=0;$i<strlen($num);$i++){
    $font = mt_rand(3,5);
    $x = mt_rand(1,8)+$imagewidth*$i/4;
    $y = mt_rand(1,$imageheight/3);
    $color=imagecolorallocate($numimage,mt_rand(0,50),mt_rand(0,150),mt_rand(0,255));
    imagestring($numimage,$font,$x,$y,$num[$i],$color);
}
imagepng($numimage);
imagedestroy($numimage);

?>

調用方法: <?php session_start(); include_once 'conn/conn.php'; $pattern = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLOMNOPQRSTUVWXYZ'; $num = null; for($i = 0; $i < 4; $i++) { $num .= $pattern{mt_rand(0, 61)}; }
?>

<div> 驗證碼: <input id="lgchk" type="text" /> <img src="valcode.php?num=<?php echo $num; ?>" width="55" height="18" /> </div></pre>

 本文由用戶 dkg654 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!