国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php編程每天必學之驗證碼

2024-09-04 11:46:56
字體:
來源:轉載
供稿:網友

本文為大家分享了php圖片驗證碼的實現代碼,分享給大家供大家參考,具體內容如下

1.驗證碼圖片生成

captcha.php

  1. //1.生成100*30大小的圖片,默認為黑色 
  2.  
  3. $image = imagecreatetruecolor(100,30); 
  4.  
  5. //創建白色底圖 
  6.  
  7. $bgcolor = imagecolorallocate($image,255,255,255); 
  8.  
  9. //用白色填充黑色 
  10.  
  11. imagefill ($image,0,0,$bgcolor); 
  12. //Vevb.com 
  13.  
  14. //2.隨機顯示數字或字母 
  15.  
  16. $captch_code = ""
  17.  
  18. for($i=0;$i<4;$i++){ 
  19.  
  20.  $fontsize=6; 
  21.  
  22.  $fontcolor=imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); 
  23.  
  24.  $data = "abcdefghijkmnpqrstuvwxy3456789"
  25.  
  26.  $fontcontent =substr($data,rand(0,strlen($data)),1); 
  27.  
  28.  $captch_code .=$fontcontent
  29.  
  30.  $x = ($i*100/4)+rand(5,10); 
  31.  
  32.  $y = rand(5,10); 
  33.  
  34.  imagestring($image$fontsize$x$y$fontcontent,$fontcolor); 
  35.  
  36.  
  37. $_SESSION["authcode"] = $captch_code
  38.  
  39. //3.增加干擾 
  40.  
  41. //干擾點 
  42.  
  43. for($i=0;$i<100;$i++){ 
  44.  
  45.  $pointcolor=imagecolorallocate($image,rand(50,200),rand(50,200),rand(50,200)); 
  46.  
  47.  imagesetpixel($image,rand(1,99),rand(1,29),$pointcolor); 
  48.  
  49.  
  50. //干擾線 
  51.  
  52. for($i=0;$i<2;$i++){ 
  53.  
  54.  $linecolor=imagecolorallocate($image,rand(80,220),rand(80,220),rand(80,220)); 
  55.  
  56.  imageline($image,rand(1,99),rand(1,29),rand(1,99),rand(1,29),$linecolor); 
  57.  
  58.  
  59. header("content-type:image/png"); 
  60.  
  61. imagepng($image); 

2.頁面實現驗證碼功能

form.php

  1. <?php 
  2.  
  3. if(isset($_POST["authcode"])){ 
  4.  
  5.  session_start(); 
  6.  
  7.  if(strtolower($_POST["authcode"])==$_SESSION["authcode"]){ 
  8.  
  9.   echo "OK"
  10.  
  11.  }else
  12.  
  13.   echo "NO"
  14.  
  15.  } 
  16.  
  17. } 
  18.  
  19. ?>          
  20.  
  21.  <meta charset="UTF-8"
  22.  
  23.  <title>Document</title> 
  24.     
  25. <form action="form.php" method="post"
  26.  
  27.  <p>驗證碼圖片: <img id="img" border="1" src="captcha.php?r=<?php echo rand()?>" alt=""
  28.  
  29.  <a href="javascript:void(0)" onclick="document.getElementById('img').src='captcha.php?r'+Math.random() ">換一個</a> 
  30.  
  31.  </p> 
  32.  
  33.  <p><input type="text" name="authcode"></p> 
  34.  
  35.  <p><input type="submit" value="提交"></p>  
  36.  
  37. </form> 

以上就是本文的全部內容,幫助大家輕松實現php圖片驗證碼。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永和县| 武山县| 民和| 四平市| 浠水县| 湖北省| 宁波市| 柏乡县| 子洲县| 石家庄市| 加查县| 阳原县| 溧水县| 崇礼县| 沐川县| 获嘉县| 张家界市| 沅陵县| 缙云县| 澳门| 阿城市| 小金县| 宁晋县| 嵊州市| 泰安市| 酒泉市| 襄汾县| 北辰区| 武义县| 南陵县| 红桥区| 安岳县| 竹北市| 漾濞| 镇宁| 咸宁市| 嘉祥县| 娄底市| 泌阳县| 武鸣县| 永寿县|