激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

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

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

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

PHP通過GD庫實現驗證碼功能示例

2019-06-10 19:44不能吃的堅果服務器之家 PHP教程

這篇文章主要介紹了PHP通過GD庫實現驗證碼功能,結合實例形式分析了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);

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

<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程序設計有所幫助。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 巨根插入 | 斗破苍穹在线免费 | 一区二区三视频 | 亚洲精品aⅴ中文字幕乱码 中文字幕欧美在线 | 国产一区二区在线免费观看 | 国产91大片 | 久久手机在线视频 | 欧美视频国产精品 | 日韩黄a| 高清在线国产 | 中文字幕电影免费播放 | 色综合视频网 | 国产外围在线 | 亚洲免费视频一区二区 | 黄网站免费在线看 | 久久人人人 | 最新欧美精品一区二区三区 | 国产欧美日本 | 欧美乱淫| 毛片电影在线看 | 999久久久精品| 日韩精品网站在线观看 | hd性videos意大利复古 | 玩偶姐姐 在线观看 | 中文字幕涩涩久久乱小说 | 成人做爰高潮片免费视频美国 | 欧美高清第一页 | 久久精品视频一区 | 亚洲精品成人在线视频 | xxxx18韩国护士hd老师 | 精品久久久久久久久久久aⅴ | 欧美 国产 综合 | 国产精品免费一区二区 | xxxxhd86日本护士hd | 日韩男女在线 | 中文字幕在线观看网址 | 久久婷婷一区二区三区 | 久久久久97国产精 | 欧美成人se01短视频在线看 | 欧美视频一区二区三区 | 色人阁五月天 |