一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php通過GD庫實現驗證碼功能

php通過GD庫實現驗證碼功能

2019-09-20 14:45不能吃的堅果 PHP教程

這篇文章主要介紹了php通過GD庫實現驗證碼功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

首先看看實現的效果:

php通過GD庫實現驗證碼功能

具體實現:

<?php/*PHP實現驗證碼*/
session_start();//開啟會話
//創建畫布
$image=imagecreatetruecolor(100,38);
//背景顏色
$bgcolor=imagecolorallocate($image,255,255,255);
imagefill($image,0,0,$bgcolor);
$captch_code='';//存儲驗證碼
//隨機選取4個數字
for($i=0;$i<4;$i++){
 $fontsize=10;  //
 $fontcolor=imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120));//隨機顏色
 $fontcontent=rand(0,9);
 $captch_code.=$fontcontent;
 $x=($i*100/4)+rand(5,10); //隨機坐標
 $y=rand(5,10);
 imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor);
}
/*//字母和數字混合驗證碼
for($i=0;$i<4;$i++) {
 $fontsize = 10;  //
 $fontcolor = imagecolorallocate($image, rand(0, 120), rand(0, 120), rand(0, 120));//??????
 $data = 'abcdefghijklmnopqrstuvwxyz1234567890'; //數據字典
 $fontcontent = substr($data, rand(0, strlen($data)), 1);
 $captch_code.=$fontcontent;
 $x = ($i * 100 / 4) + rand(5, 10);
 $y = rand(5, 10);
 imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);
}*/
$_SESSION['code']=$captch_code;
//增加干擾點
for($i=0;$i<200;$i++){
 $pointcolor=imagecolorallocate($image,rand(50,200),rand(50,200),rand(50,200));
 imagesetpixel($image,rand(1,99),rand(1,29),$pointcolor);//
}
//增加干擾線
for($i=0;$i<3;$i++){
 $linecolor=imagecolorallocate($image,rand(80,280),rand(80,220),rand(80,220));
 imageline($image,rand(1,99),rand(1,29),rand(1,99),rand(1,29),$linecolor);
}
//輸出格式
header('content-type:image.png');
imagepng($image);
//銷毀圖片
imagedestroy($image);

實現表單的連接和“換一個”功能的實現:1

<input type="text" placeholder="驗證碼" name="verifycode" class="captcha"><br><br>
<img id="captcha_img" src="captcha.php?r=<?php echo rand();?>" alt="驗證碼">
<label><a href="javascript:void(0)" rel="external nofollow" onclick="document.getElementById('captcha_img').src='captcha.php?r='+Math.random()">換一個</a> </label>

captcha.php后面加上一個隨機參數是為了實現換一個驗證碼的功能,,換一個功能通過簡單的js即可實現。如果沒有這個功能可以不用參數。

總結

以上所述是小編給大家介紹的php通過GD庫實現驗證碼功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久99视频精品免费观看福利 | 色综合久久六月婷婷中文字幕 | 国产精品女主播自在线拍 | 色综合网天天综合色中文男男 | tube69中国露脸 | 调教处男 | 91se精品免费观看 | 日韩毛片在线影视 | 性妲己 | 日本免费的一级绿象 | 欧美人伦禁忌.5 | 精品牛牛影视久久精品 | 国产成年人 | 欧美娇小性xxxx | 四虎1515hhc0m | 天天摸日日舔 | 99pao在线视频精品免费 | 99成人免费视频 | 亚洲国产精品久久久久久 | 青青草在线观看 | 色啪久久婷婷综合激情 | 精品一区二区三区在线成人 | 亚洲第一网色综合久久 | 办公室强行丝袜秘书啪啪 | b站免费| 国产在线视频色综合 | 亚洲AV国产精品无码精 | 亚洲天堂精品在线 | 国产手机在线αⅴ片无码观看 | 久久国产36精品色熟妇 | 99久久999久久久综合精品涩 | 色吧导航 | 日韩性大片免费 | 青青青视频免费观看 | 国产精品第1页在线播放 | 精品日韩一区 | 全黄h全肉细节修仙玄幻文 全彩调教侵犯h本子全彩妖气he | 久久伊人中文字幕有码 | 九哥草逼网 | 亚洲欧美另类综合 | 男人在线网址 |