php 驗證碼實例代碼
更新時間:2010年06月01日 00:00:29 作者:
首先驗證碼的原理就是,畫一張圖片,然后在這張圖片上寫一些字,然后加一些干擾的線條,像素點之類的東西就ok了,這里要使用php那就要知道php中畫圖的函數(shù)是那些,然后拿來用便是了。
如果要用php的畫圖函數(shù),首先要啟用這個模塊的功能。就是把php.ini中php_gd2.dll前面的注釋去掉就好了。
下面開始畫圖:
<?php
session_start();
//生成驗證碼圖片
Header("Content-type: image/PNG");
$im = imagecreate(44,18); // 畫一張指定寬高的圖片
$back = ImageColorAllocate($im, 245,245,245); // 定義背景顏色
imagefill($im,0,0,$back); //把背景顏色填充到剛剛畫出來的圖片中
$vcodes = "";
srand((double)microtime()*1000000);
//生成4位數(shù)字
for($i=0;$i<4;$i++){
$font = ImageColorAllocate($im, rand(100,255),rand(0,100),rand(100,255)); // 生成隨機(jī)顏色
$authnum=rand(1,9);
$vcodes.=$authnum;
imagestring($im, 5, 2+$i*10, 1, $authnum, $font);
}
$_SESSION['VCODE'] = $vcodes;
for($i=0;$i<100;$i++) //加入干擾象素
{
$randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imagesetpixel($im, rand()%70 , rand()%30 , $randcolor); // 畫像素點函數(shù)
}
ImagePNG($im);
ImageDestroy($im);
?>
基本就是這樣實現(xiàn)了,其實如果給圖片打水印也無非就是往圖片里面寫字,原理都差不多的。
使用的地方直接
<img src="xxx.php" /> 填寫這個php文件的名字,就可以使用了。
下面開始畫圖:
復(fù)制代碼 代碼如下:
<?php
session_start();
//生成驗證碼圖片
Header("Content-type: image/PNG");
$im = imagecreate(44,18); // 畫一張指定寬高的圖片
$back = ImageColorAllocate($im, 245,245,245); // 定義背景顏色
imagefill($im,0,0,$back); //把背景顏色填充到剛剛畫出來的圖片中
$vcodes = "";
srand((double)microtime()*1000000);
//生成4位數(shù)字
for($i=0;$i<4;$i++){
$font = ImageColorAllocate($im, rand(100,255),rand(0,100),rand(100,255)); // 生成隨機(jī)顏色
$authnum=rand(1,9);
$vcodes.=$authnum;
imagestring($im, 5, 2+$i*10, 1, $authnum, $font);
}
$_SESSION['VCODE'] = $vcodes;
for($i=0;$i<100;$i++) //加入干擾象素
{
$randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imagesetpixel($im, rand()%70 , rand()%30 , $randcolor); // 畫像素點函數(shù)
}
ImagePNG($im);
ImageDestroy($im);
?>
基本就是這樣實現(xiàn)了,其實如果給圖片打水印也無非就是往圖片里面寫字,原理都差不多的。
使用的地方直接
<img src="xxx.php" /> 填寫這個php文件的名字,就可以使用了。
您可能感興趣的文章:
- 一個簡單的PHP驗證碼實現(xiàn)代碼
- thinkphp驗證碼顯示不出來的解決方法
- 一漂亮的PHP圖片驗證碼實例
- ThinkPHP驗證碼使用簡明教程
- 一個好用的PHP驗證碼類實例分享
- PHP生成Gif圖片驗證碼
- PHP 驗證碼不顯示只有一個小紅叉的解決方法
- 一個漂亮的php驗證碼類(分享)
- PHP5中GD庫生成圖形驗證碼(有漢字)
- php仿QQ驗證碼的實例分析
- PHP圖片驗證碼制作實現(xiàn)分享(全)
- 支持中文字母數(shù)字、自定義字體php驗證碼代碼
- PHP學(xué)習(xí)筆記 用戶注冊模塊用戶類以及驗證碼類
- 一個PHP驗證碼類代碼分享(已封裝成類)
- PHP 驗證碼的實現(xiàn)代碼
- PHP驗證碼類代碼( 最新修改,完全定制化! )
- PHP 動態(tài)隨機(jī)生成驗證碼類代碼
- php 生成隨機(jī)驗證碼圖片代碼
- php5 圖片驗證碼實現(xiàn)代碼
- php 數(shù)學(xué)運算驗證碼實現(xiàn)代碼
- php圖片驗證碼代碼
- PHP+javascript制作帶提示的驗證碼源碼分享
相關(guān)文章
php冒泡排序、快速排序、快速查找、二維數(shù)組去重實例分享
這篇文章主要介紹了php冒泡排序、快速排序、快速查找、二維數(shù)組去重實例分享,需要的朋友可以參考下2014-04-04利用Laravel生成Gravatar頭像地址的優(yōu)雅方法
Gravatar是一圖像跟隨著您到訪過的網(wǎng)站,當(dāng)您在博客中留言或發(fā)表文章,它將會出現(xiàn)在您的名稱旁。下面這篇文章主要給大家介紹了關(guān)于利用Laravel如何生成 Gravatar 頭像地址的優(yōu)雅方法,需要的朋友可以參考下。2017-12-12PHP 提取圖片img標(biāo)記中的任意屬性的簡單實例
這篇文章主要介紹了PHP 提取圖片img標(biāo)記中的任意屬性的簡單實例,有需要的朋友可以參考一下2013-12-12php微信公眾平臺開發(fā)(四)回復(fù)功能開發(fā)
這篇文章主要介紹了php微信公眾平臺開發(fā)的第四篇,微信回復(fù)功能開發(fā),具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-12-12PHPWind9.0手動屏蔽驗證碼解決后臺關(guān)閉驗證碼但是依然顯示的問題
這篇文章主要介紹了PHPWind9.0手動屏蔽驗證碼解決后臺關(guān)閉驗證碼但是依然顯示的問題的相關(guān)資料,需要的朋友可以參考下2016-08-08基于HTTP長連接的"服務(wù)器推"技術(shù)的php 簡易聊天室
關(guān)于HTTP長連接的“服務(wù)器推”技術(shù)原理可以查看IBM的這篇文章,我簡單的做了個DEMO.2009-10-10重新認(rèn)識php array_merge函數(shù)
PHP中合并數(shù)組分成兩種情況:1.如果這兩個數(shù)組中有相同的字符串鍵名 2.如果這兩個數(shù)組中有相同的數(shù)值鍵名2014-08-08