新‧夢想
跳到主文
部落格全站分類:
不設分類
相簿
部落格
留言
名片
Jun
11
Wed
2008
11:27
PHP中製作驗證圖片
PHP中製作驗證圖片
今天推出驗證圖片的功能
每一行的指令都有加上註解
下面各項參數最佳化於100X30的尺寸
如有變更驗證圖片的長寬
參數需要自行修正
<br /> <br /> function makeRandomImage($arg_aryVerifyString,$arg_intWidth = 100,$arg_intHieht = 30)<br /> { <br /> header('Content-type: image/png');<br /> //干擾字串長度<br /> $intInterfereStringLength = round($arg_intWidth / 5.4) ;<br /> //干擾字串出現幾次<br /> $intInterfereStringDisplayCount = round($arg_intHieht / 10) ;<br /> //畫布<br /> $objImage = ImageCreate($arg_intWidth,$arg_intHieht); <br /> //背景色碼<br /> $objBgColor = imagecolorallocate($objImage,255,255,255);<br /> //框線色碼<br /> $objBorderColor =imagecolorallocate($objImage,0,0,255);<br /> //驗證字串色碼<br /> $objVerifyStringColor = imagecolorallocate($objImage,255,10,22);<br /> //干擾字串色碼<br /> $objInterfereStringColor = imagecolorallocate($objImage,255,128,255); <br /> //製作背景干擾字串<br /> for($i=0 ; $i<$intInterfereStringDisplayCount ;$i++)<br /> {<br /> imagestring($objImage, 1,2,($i*10)+1, createRandString($intInterfereStringLength), $objInterfereStringColor); <br /> }<br /> //上驗證碼<br /> imagestring($objImage, 5, round($arg_intHieht*0.3), round($arg_intHieht/4.5), $arg_aryVerifyString, $objVerifyStringColor);<br /> //畫框線<br /> imageline($objImage,0,0,$arg_intWidth,0,$objBorderColor);//上<br /> imageline($objImage,0,$arg_intHieht -1,$arg_intWidth,$arg_intHieht-1,$objBorderColor);//下<br /> imageline($objImage,0,0,0,$arg_intHieht,$objBorderColor); //左<br /> imageline($objImage,$arg_intWidth-1,0,$arg_intWidth-1,$arg_intHieht,$objBorderColor); //右 <br /> imagepng( $objImage);<br /> //清除資源<br /> imageDestroy($objImage);<br /> }<br /> //隨機字串<br /> function createRandString ($arg_intLength) {<br /> srand((double)microtime()*1000000); <br /> $strLetters = range ('`','Z');<br /> $strNumbers = range(0,9);<br /> $arrayChars = array_merge($strLetters,$strNumbers);<br /> $strRandString ='';<br /> for ( $i=0;$i<$arg_intLength;$i++ )<br /> {<br /> shuffle($arrayChars);<br /> $strRandString .= $arrayChars[0];<br /> }<br /> return $strRandString;<br /> }<br /> <br /> <br />
makeRandomImage('A E - 8 6',100,30);
全站熱搜
創作者介紹
kevin0523
新‧夢想
kevin0523 發表在
痞客邦
留言
(0)
人氣(
)
E-mail轉寄
留言列表
發表留言
月曆
«
三月 2024
»
日
一
二
三
四
五
六
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
近期文章
最新迴響
新聞交換(RSS)
誰來我家
參觀人氣
本日人氣:
累積人氣:
熱門文章
文章彙整
文章彙整
2009 三月 (1)
2009 二月 (1)
2009 一月 (1)
2008 十一月 (1)
2008 八月 (1)
2008 七月 (1)
2008 六月 (8)
2008 五月 (14)
2008 四月 (3)
2008 二月 (32)
2008 一月 (6)
2007 十二月 (7)
2007 十一月 (5)
2007 十月 (41)
所有文章列表
文章分類
程式設計 (8)
Google_API - Google Map (3)
JSP (0)
FLASH AS (0)
PHP (32)
Perl (0)
AJAX (0)
Javascript (39)
Javascript-Jquery (1)
網頁設計 (2)
精選網站 (0)
CSS (0)
系統相關 (8)
Linux (8)
Linux - 指令 (0)
Linux - 防火牆 (0)
Linux - Apache (8)
Linux - DNS (0)
FMS + FFMpeg (5)
MySQL (21)
Mysql (1)
資訊安全 (0)
網站企劃 (1)
網站規劃 (1)
Google_API - Google Chart API (1)
網路密技 (1)
未分類文章 (1)
我的連結
QR Code
關閉視窗
留言列表