PHP實現驗證碼

發表博客時看到了本網站的驗證碼功能,所以寫了這篇文章。原理相同

爲了防止暴力破解我們一般都會添加驗證碼功能,這裏主要介紹php帶運算的驗證碼是如何實現的。

1.首先要繪製驗證碼的背景圖片 使用GD2來實現

$image = imagevreate(70,20);//設置畫布大小

$background = ImageColorAllocate($im,245,245,245);//創建顏色,用於填充畫布

imagefill($image,0,0$background);//填充畫布


2.在畫布上繪製數字

$color = ImageColorAllocate($image,rand(100,255),rand(0,100),rand(100,255));//隨機創建一種顏色

$num = rand(1,9);//創建一個隨機數

imagestring($image,5,2+0*10,1,$num,$color);//在畫布上繪製數字

3.添加運算

以加法爲例,繪製4個隨機數字,第一個是被加數的十位,第二個是被加數的個位,第三個是加數的十位,第四個是加數的個位,在第二三個數字中間繪製運算符(+),在第四個數後面繪製等號。

算出結果$result=$a*10+$b+$c*10+$d

4.驗證驗證碼

驗證碼在顯示時我們可以將生成的結果存放在一個session的值裏 $_SESSION['result']=$result。和用戶輸入的驗證碼做對比,驗證是否輸入正確




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章