全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

php实现网页端验证码功能

我们在实际开发中,会用到短信验证码以及网页验证码,相对来说网页验证码的成本比较低,安全系数也还可以,接下来我们就来做一个网页端的验证码,直接上代码:

首先来说一下文件目录结构:

    |----------phpyanzheng  项目文件夹

      |----fonttype 文件夹放字体文件,字体文件一般以 .ttf和.otf结尾

      |----1.php  里面放php语言代码

      |----index.html  里面放网页布局

1.php

<?php
  header('content-type:image/jpeg');//定义一下代码以jpeg文件来解析
  $width = 120;//定义了图像的宽
  $height = 40;//定义了图像的高
  $element = array('q','w','e','r','t','y','u','i','o','p','l','k','j','h','g','f','d','s','a','z','x',
  'c','v','b','n','m','1','2','3','4','5','6','7','8','9','0','Q','W','E','R','T','Y','U','I','O','P','A'
  ,'S','D','F','G','H','J','K','L','M','N','B','V','C','X','Z');//定义一个显示文本的数组
  $string = '';
  for($i=0;$i<4;$i++){
    $string.=$element[rand(0,count($element)-1)];//随机产生四个文本目标
  }
  $img = imagecreatetruecolor($width, $height);//设置验证区宽高
  $colorBg = imagecolorallocate($img,rand(185,255),rand(185,255),rand(185,255));//产生200-255的随机数
  $colorBorder = imagecolorallocate($img,rand(50,100),rand(50,100),rand(50,100));//边框颜色
  $colorDian = imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100));//背景小点的颜色
  $colorLine = imagecolorallocate($img,rand(0,255),rand(0,255),rand(0,255));
  $colorString = imagecolorallocate($img,rand(20,80),rand(20,80),rand(20,80));
  imagefill($img, 0, 0, $colorBg);//设置位置和背景颜色
  imagerectangle($img,0,0,$width-1,$height-1,$colorBorder);//画一个边框
  for($i=0;$i<200;$i++){//循环出200个干扰点
    imagesetpixel($img, rand(0, $width-1), rand(0, $height-1), $colorDian);
  }
  for($i=0;$i<round(5);$i++){//循环出5条干扰线
    imageline($img,rand(0,$width/2),rand(0,$height/2),rand($width/2,$width),rand($height/2,$height),$colorLine);
  }
  //imagestring($img, 4, 0, 0,'a5dg', $colorString);
  
  imagettftext($img,25,rand(5, 15),rand(0,40),39,$colorString,'fonttype/PrincetownStd.otf',$string);
  //    图像名称  字体大小 倾斜角度 起始位置X轴 起始位置Y轴 颜色 字体位置 显示的内容
  imagejpeg($img);//输出图像
?>

index.html

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>孙三峰--验证码</title>
    <script type="text/javascript" src="js/jquery-1.1.0.js" ></script>
  </head>
  <body>
    <!--注意:原文中对应的ip地址是自己电脑端ip,如果不能正常运行,请修改ip-->
    <p>
      <label class="lbright">验证码:</label> 
      <span> 
        <input type="text" name="validcode" style="width:70px; vertical-align:middle;" id="validcode"/> 
        <img id="codePic" src="http://192.168.1.113:8601/PHP/phpyanzheng/1.php" width="120" height="40"/>          
      </span>         
      <span id="codePic" onclick="getPic();">看不清楚,换一张</span> <!---->
    </p>     
  </body>
  <script type="text/javascript"> 
     function getPic(){ 
         $("#codePic").attr("src","http://192.168.1.113:8601/PHP/phpyanzheng/1.php?flag="+Math.random()); <!--局部刷新--> 
     }; 
  </script>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# php  # 验证码  # 一个实用的php验证码类  # php图像验证码生成代码  # PHP写的简单数字验证码实例  # 一个漂亮的php验证码类(分享)  # php图片验证码代码  # PHP生成图片验证码、点击切换实例  # php发送短信验证码完成注册功能  # PHP验证码类代码( 最新修改  # 完全定制化! )  # 完美解决thinkphp验证码出错无法显示的方法  # PHP使用CURL实现对带有验证码的网站进行模拟登录的方法  # 随机数  # 安全系数  # 做一个  # 较低  # 就来  # 看不  # 也还  # 正常运行  # 大家多多  # 画一  # 在实际  # rand  # string  # array  # imagecreatetruecolor  # img  # count  # width  # jpeg 


相关文章: 制作企业网站建设方案,怎样建设一个公司网站?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  制作网站的公司有哪些,做一个公司网站要多少钱?  b2c电商网站制作流程,b2c水平综合的电商平台?  ,怎么在广州志愿者网站注册?  免费视频制作网站,更新又快又好的免费电影网站?  如何快速生成专业多端适配建站电话?  如何获取上海专业网站定制建站电话?  小建面朝正北,A点实际方位是否存在偏差?  如何注册花生壳免费域名并搭建个人网站?  如何用花生壳三步快速搭建专属网站?  jQuery 常见小例汇总  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  如何在云主机上快速搭建网站?  网站制作多少钱一个,建一个论坛网站大约需要多少钱?  建站之星安装后如何自定义网站颜色与字体?  建站之星价格显示格式升级,你的预算足够吗?  如何通过虚拟主机快速搭建个人网站?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  建站三合一如何选?哪家性价比更高?  导航网站建站方案与优化指南:一站式高效搭建技巧解析  如何在IIS中新建站点并配置端口与物理路径?  单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  建站之星后台搭建步骤解析:模板选择与产品管理实操指南  高防服务器如何保障网站安全无虞?  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  韩国服务器如何优化跨境访问实现高效连接?  香港服务器租用费用高吗?如何避免常见误区?  网站微信制作软件,如何制作微信链接?  Swift中循环语句中的转移语句 break 和 continue  网站制作壁纸教程视频,电脑壁纸网站?  网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?  活动邀请函制作网站有哪些,活动邀请函文案?  ,想在网上投简历,哪几个网站比较好?  个人网站制作流程图片大全,个人网站如何注销?  如何在阿里云完成域名注册与建站?  如何在腾讯云服务器快速搭建个人网站?  如何基于PHP生成高效IDC网络公司建站源码?  宝华建站服务条款解析:五站合一功能与SEO优化设置指南  教育培训网站制作流程,请问edu教育网站的域名怎么申请?  学校为何禁止电信移动建设网站?  建站之星如何配置系统实现高效建站?  黑客入侵网站服务器的常见手法有哪些?  在线制作视频网站免费,都有哪些好的动漫网站?  建站主机选哪种环境更利于SEO优化?  中山网站推广排名,中山信息港登录入口?  如何通过万网虚拟主机快速搭建网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。