亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

php實現算術驗證碼功能

2024-05-05 00:05:51
字體:
來源:轉載
供稿:網友

最近學了php的圖像函數,也練習的驗證碼的實現,在聽從老師的建議下,自己寫了一個算術驗證碼的函數,第一次自己獨立完成一個小練習,感覺挺開心的。但是,也知道自己的局限,所以特意寫出來,希望各路大神指點一下,能夠更多的拓展自己的視野。

php代碼如下:實現驗證碼的功能

<?php/** * @param int $width 寬度,默認為120 * @param int $height 高度,默認為50 * @param int $fontSize 字體的大小 * @return 圖片資源 */function arithmeticCode($width=120,$height=50,$fontSize=20){  //開啟session  session_start();  //創建畫布  $img = imagecreatetruecolor($width,$height);  //分配顏色  $color = imagecolorallocate($img,255,255,255);  //填充顏色  imagefill($img,0,0,$color);  //干擾點  for ($i = 0;$i < 500;$i++){    $pixColor = imagecolorallocate($img,mt_rand(100,200),mt_rand(100,200),mt_rand(100,200));    imagesetpixel($img,mt_rand(0,$width),mt_rand(0,$height),$pixColor);  }  //干擾線  for ($i = 0;$i < 4;$i++){    $lineColor = imagecolorallocate($img,mt_rand(0,120),mt_rand(0,120),mt_rand(0,120));    imageline($img,mt_rand(0,$width),mt_rand(0,$height),mt_rand(0,$width),mt_rand(0,$height),$lineColor);  }  //定義一個數組存放運算符號  $arr = ['+','-','*'];  //計算數組的長度  $len = count($arr);  //定義一個1到20的數組  $num = range(1,20);  $numLen = count($num);  //定義一個空數組來存放隨機取得的驗證碼  $code = [];  for ($i = 0;$i < $len;$i++) {    if ($i == 1) {      $code[] = $arr[mt_rand(0,$len-1)];    }else {      $code[] = $num[mt_rand(0,$numLen-1)];    }  }  $str = implode($code);//將數組轉為字符串  $textColor = imagecolorallocate($img,mt_rand(100,200),mt_rand(100,200),mt_rand(100,200));  $fontAngle = 0;  $x = ($width - $fontSize*3)/2;  $y = ($height - $fontSize) / 2 + $fontSize;  imagettftext($img,$fontSize,$fontAngle,$x,$y,$textColor,"./img/msyh.ttc",$str);  $res = getRes($code);  //將函數存放在session中  $_SESSION['res'] = $res;  //輸出圖片  header("content-type:image/png");  imagepng($img);}/** * @param $arr 一個包含運算符號的數組 * @return 返回一個運算結果 */function getRes($arr) {  $sum = 0;  //判斷數組元素下標為1的運算符號是什么  switch ($arr[1]){    case '+':      $sum = $arr[0] + $arr[2];      break;    case '-':      $sum = $arr[0] - $arr[2];      break;    case '*':      $sum = $arr[0] * $arr[2];      break;  }  return $sum;}//調用函數arithmeticCode(100,40,18);

html的部分代碼

<!doctype html><html lang="en"><head>  <meta charset="UTF-8">  <meta name="viewport"     content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">  <meta http-equiv="X-UA-Compatible" content="ie=edge">  <title>Document</title>  <style>    img {      position: relative;      top: 20px;    }  </style></head><body><form action="test.php">  驗證碼 <input type="text" name="code">  <img src="./demo5.php"  <br>  <button>提交</button></form></body></html><script>  //實現點擊圖片刷新驗證碼的功能  var img = document.querySelector("img");  img.onclick = function () {    this.src = this.src+"?m="+Math.random();  }</script>

test.php的測試

<?phpsession_start();$res = $_SESSION['res'];$value = $_GET['code'];if ($res == $value) {  echo "test success";}else{  echo "test fail";}

以上就是我的代碼組成. 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品美女网站| 疯狂做受xxxx欧美肥白少妇| 国产一区二区三区18| 国产日韩欧美电影在线观看| 亚洲日本欧美中文幕| 性视频1819p久久| 欧美激情精品久久久久久蜜臀| 亚洲精品国精品久久99热一| 日韩av在线免费看| 国产v综合v亚洲欧美久久| 97视频在线播放| 国产亚洲激情在线| 欧美午夜片欧美片在线观看| 欧美电影在线播放| 亚洲一区二区三区毛片| 亚洲欧美日韩精品久久奇米色影视| 欧美激情精品久久久久久| 久久的精品视频| 日韩欧美成人免费视频| 久久人91精品久久久久久不卡| 亚洲精品少妇网址| 国产精品普通话| 欧美精品久久久久久久免费观看| 成人国内精品久久久久一区| 欧美精品做受xxx性少妇| 秋霞成人午夜鲁丝一区二区三区| 亚洲国产另类久久精品| 夜夜躁日日躁狠狠久久88av| 97婷婷涩涩精品一区| 国产一区二区日韩精品欧美精品| 日韩视频精品在线| 久久久久久久国产精品视频| 国产精品日韩在线播放| 亚洲精品www久久久久久广东| 日韩中文字幕免费| 日韩欧美在线视频免费观看| 久久久久久久爱| 亚洲欧洲日本专区| 亚洲人a成www在线影院| 国产精品亚洲美女av网站| 欧美激情啊啊啊| 久久艳片www.17c.com| 亚洲第一精品夜夜躁人人躁| 57pao成人国产永久免费| 国产精品精品久久久| 国产精品福利小视频| 亚洲理论电影网| 91地址最新发布| 国产日韩精品视频| 高清日韩电视剧大全免费播放在线观看| 日本高清+成人网在线观看| 国产成人精品免高潮在线观看| 亚洲最新视频在线| 亚洲影院色在线观看免费| 欧美成人小视频| 夜夜躁日日躁狠狠久久88av| 亚洲精品国产精品自产a区红杏吧| 韩国精品美女www爽爽爽视频| 精品久久久久久久久久久久| 色噜噜狠狠狠综合曰曰曰88av| 国产亚洲精品美女| 国产精品色悠悠| 国产香蕉精品视频一区二区三区| 丝袜亚洲欧美日韩综合| 亚洲少妇激情视频| 欧美激情一区二区三区久久久| 日韩中文综合网| 欧美成人精品不卡视频在线观看| 欧美综合在线观看| 亚洲精品国产精品久久清纯直播| 国产国语刺激对白av不卡| 亚洲免费视频一区二区| 精品伊人久久97| 欧美日韩国产丝袜美女| 日韩男女性生活视频| 日本一区二三区好的精华液| 91色视频在线导航| 久久久成人精品视频| 美女久久久久久久久久久| 久久亚洲国产精品成人av秋霞| xxx欧美精品| 亚洲欧美日韩精品久久亚洲区| 色狠狠av一区二区三区香蕉蜜桃| 色樱桃影院亚洲精品影院| 精品无人区太爽高潮在线播放| 精品呦交小u女在线| 日韩精品999| 欧美影院在线播放| 亚洲国产黄色片| 欧美怡红院视频一区二区三区| 久久综合国产精品台湾中文娱乐网| 国内精品国产三级国产在线专| 日韩在线不卡视频| 欧美大片在线免费观看| 国产成人精品综合| 国产成人精品一区二区在线| 国产精品视频26uuu| 日韩电影在线观看中文字幕| 免费av一区二区| 疯狂做受xxxx欧美肥白少妇| 8090成年在线看片午夜| 日韩av一区二区在线观看| 国内精品视频久久| 欧美日韩日本国产| 国模吧一区二区三区| 国产成人在线一区| 亚洲成人精品视频在线观看| 日韩毛片在线观看| 久久亚洲综合国产精品99麻豆精品福利| 成人a视频在线观看| 97碰在线观看| 亚洲精品国产精品国自产在线| 欧美亚洲视频在线观看| 国外成人性视频| 亚洲成人精品av| 91九色单男在线观看| 色偷偷av一区二区三区| 日韩69视频在线观看| 66m—66摸成人免费视频| 国产欧美日韩中文| 久久久免费精品视频| 欧美不卡视频一区发布| 欧美激情a在线| 免费成人高清视频| 久久亚洲精品小早川怜子66| 欧美日韩裸体免费视频| 久久99青青精品免费观看| 66m—66摸成人免费视频| 欧美日韩一区二区三区在线免费观看| 欧洲美女免费图片一区| 亚洲综合成人婷婷小说| 久久这里只有精品视频首页| 色综合亚洲精品激情狠狠| 色多多国产成人永久免费网站| 亚洲性无码av在线| 91久久久亚洲精品| 欧美床上激情在线观看| 日韩成人久久久| 国外日韩电影在线观看| 国产99久久精品一区二区 夜夜躁日日躁| 91精品啪aⅴ在线观看国产| 欧美精品做受xxx性少妇| 久久久天堂国产精品女人| 久久精品91久久香蕉加勒比| 精品偷拍各种wc美女嘘嘘| 国产欧美日韩专区发布| 日韩中文在线不卡| 亚洲无线码在线一区观看| 日韩在线视频观看| 精品一区精品二区| 色爱av美腿丝袜综合粉嫩av| 亚洲激情视频网| 狠狠色噜噜狠狠狠狠97| 色婷婷综合成人av| 国产精品一香蕉国产线看观看| 国产香蕉一区二区三区在线视频| 国产91网红主播在线观看| 成人做爰www免费看视频网站| 国产日韩在线播放| 国产成人一区二区三区| 综合国产在线观看| 狠狠色香婷婷久久亚洲精品| 欧美在线影院在线视频| 久久成年人视频|