PHP實現簡單的驗證碼

2021-07-25 17:58:06 字數 1634 閱讀 5034

我寫了兩種驗證碼:數字+字母驗證碼和漢字驗證碼。

-------------------首先是html的表單---------------------

<?php 

if(isset($_post["sub"])) 

else 

}?>

--------------數字驗證碼authcode_1.php----------------

<?php 

session_start();

$yzm=''; //驗證碼

$image=imagecreatetruecolor(100,30);

$bgcolor=imagecolorallocate($image,0xff,0xff,0xff); //白色背景

imagefill($image,0,0,$bgcolor); //用白色背景填充

//產生驗證碼的內容

for($i=0;$i<4;$i++) 

$_session["authcode"]=$yzm;

//增加干擾點

for($i=0;$i<200;$i++) 

//增加干擾線

for($i=0;$i<3;$i++) 

header('content-type:image/png'); //傳送原生http頭

imagepng($image); //以png格式顯示

imagedestroy($image); //銷毀影象

?>

----------------漢字驗證碼authcode_2.php----------------

<?php 

session_start();

$yzm=''; //驗證碼

$image=imagecreatetruecolor(200,60);

$bgcolor=imagecolorallocate($image,0xff,0xff,0xff); //白色背景

$str='鐵議費有會現線路在成限特爭未的完高業僅來城京模社小式收家際沈開通和善美亞'; //漢字的**

$strdb=str_split($str,3); //把$str分割成陣列

$fontfile='msyh.ttf'; //使用微軟雅黑字型

imagefill($image,0,0,$bgcolor); //用白色背景填充

//產生驗證碼的內容

for($i=0;$i<4;$i++) 

$_session["authcode"]=$yzm;

//增加干擾點

for($i=0;$i<200;$i++) 

//增加干擾線

for($i=0;$i<3;$i++) 

header('content-type:image/png'); //傳送原生http頭

imagepng($image); //以png格式顯示

imagedestroy($image); //銷毀影象

?>

----------------結束------------------

----------------------------------------

PHP實現簡單漢字驗證碼

現在越來越多的 都開始使用漢字驗證碼了,既增加了我們國人的親切感,同時也增加了機器破解的難度,這裡我就簡單粗暴的說一下。建立背景畫布 image imagecreatetruecolor 200,60 background imagecolorallocate image,255,255,255 i...

PHP實現驗證碼

目前,不少 為了防止使用者利用機械人自動註冊 登入 灌水,都採用了驗證碼技術。所謂驗證碼,就是將一串隨機產生的數字或符號,生成一幅,裡加上一些干擾象素 防止 ocr 由使用者肉眼識別其中的驗證碼資訊,輸入表單提交 驗證,驗證成功後才能使用某項功能。我們這裡展示了如何編寫 php程式實現驗證碼功能 一...

php實現驗證碼

繪製驗證碼 num 5 str getcode num,2 建立畫布 width num 20 height 30 im imagecreatetruecolor width,height color 0 imagecolorallocate im,100,18,199 color 1 imagec...