加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php实现可运算的验证码

发布时间:2020-12-13 02:55:58 所属栏目:PHP教程 来源:网络整理
导读:《PHP实例:php实现可运算的验证码》要点: 本文介绍了PHP实例:php实现可运算的验证码,希望对您有用。如果有疑问,可以联系我们。 PHP编程 本文分享了php实现可运算的验证码的代码实例,希望对大家的学习有所赞助. PHP编程 demo.php代码 PHP编程 ?php sessi

《PHP实例:php实现可运算的验证码》要点:
本文介绍了PHP实例:php实现可运算的验证码,希望对您有用。如果有疑问,可以联系我们。

PHP编程本文分享了php实现可运算的验证码的代码实例,希望对大家的学习有所赞助.

PHP编程demo.php代码

PHP编程
<?php 
session_start(); 
if(!emptyempty($_POST['Login'])){ 
  if(md5(strtoupper($_POST['Login'])) == $_SESSION['Login']){ 
    echo 'Correct'; 
  }else{ 
    echo 'Error';   
  } 
} 
?> 
 
<form method="post"> 
  <input type="text" name="Login" value="" /><img src="img.php?Action=Login&imgW=80&imgH=30" align="absmiddle"> 
  <input type="submit" value="Login" /> 
</form> 

PHP编程img.php代码

PHP编程
<?php 
session_start(); 
 /** 
* 随机的数字,之和验证码 
* 修改日期 2006-12-20 
*/ 
function getCode ($length = 32,$mode = 0) 
{ 
switch ($mode) 
{ 
   case '1': 
     $str = '123456789'; 
      break; 
 case '2': 
      $str = 'abcdefghijklmnopqrstuvwxyz'; 
      break; 
 case '3': 
      $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; 
      break; 
 case '4': 
      $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; 
      break; 
 case '5': 
      $str = 'ABCDEFGHIJKLMNPQRSTUVWXYZ123456789'; 
      break; 
    case '6': 
      $str = 'abcdefghijklmnopqrstuvwxyz1234567890'; 
      break; 
    default: 
      $str = 'ABCDEFGHIJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789'; 
      break; 
} 
 
$result = ''; 
$l = strlen($str)-1; 
for($i = 0;$i < $length;$i ++) 
{ 
 $num = rand(0,$l); 
 $result .= $str[$num]; 
} 
return $result; 
} 
//建立验证图片 
function createAuthNumImg($randStr,$imgW=100,$imgH=40,$fontName) 
{ 
header ("content-type: image/png"); 
$image = imagecreate($imgW,$imgH); 
$color_white = imagecolorallocate($image,255,255); 
$color_gray = imagecolorallocate($image,228,228); 
$color_black = imagecolorallocate($image,102,204); 
for ($i = 0 ; $i < 1000 ; $i++) 
{ 
 imagesetpixel($image,mt_rand(0,$imgW),$imgH),$color_gray); 
} 
imagerectangle($image,$imgW - 1,$imgH - 1,$color_gray); 
for ($i=10;$i<$imgH;$i+=10) 
 imageline($image,$i,$imgW,$color_gray); 
imagettftext($image,16,5,3,25,$color_black,$fontName,$randStr); 
for ($i=10;$i<$imgW;$i+=10) 
 imageline($image,$imgH,$color_gray); 
imagepng($image); 
imagedestroy($image); 
} 
 
$a=GetCode(1,1); 
$b=GetCode(1,1); 
$c=GetCode(1,1); 
$Passport=$a."+".$b."+".$c; 
$Total=$a+$b+$c; 
$Total; 
$_SESSION[$_GET['Action']]=md5(strtoupper($Total)); 
createAuthNumImg($Passport,$_GET['imgW'],$_GET['imgH'],"verdana.ttf"); 
?> 

PHP编程以上就是为大家介绍的php可运算的验证码全部代码,希望对大家的学习有所赞助.

《PHP实例:php实现可运算的验证码》是否对您有启发,欢迎查看更多与《PHP实例:php实现可运算的验证码》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读