利用PHP绘图函数实现简单验证码功能的方法


Posted in PHP onOctober 18, 2016

index.php

<?php
//===================================》》使用绘图技术绘制验证码

//1.随机产生4个随机数
$checkCode="";
for ($i=0;$i<4;$i++){
$checkCode.=dechex(rand(1, 15));// decheck()十进制转换为十六进制,即验证码上要显示的数字
}

//2.存入列
session_start();
$_SESSION['checkCode']=$checkCode;

//3.创建画布
$image1=imagecreatetruecolor(100, 30);

//制造干扰,创建20条弧线
for ($j=0;$j<30;$j++){
imagearc($image1, rand(0, 100), rand(0, 30), rand(0, 100), rand(0, 30), rand(0, 360), rand(0, 360), imagecolorallocate($image1, rand(0, 155), rand(0, 255), rand(0, 255)));
}

//3.创建字体颜色,将字粘贴上去
$white=imagecolorallocate($image1, 255, 255, 255);
imagestring($image1, rand(2, 5), rand(5, 70), rand(2, 15), $checkCode, $white);

//5.输出图像或保存
header("content-type:image/png");
imagepng($image1);

//6.释放资源
imagedestroy($image1);

login.php

请输入验证码:<img src="index.php" onclick="this.src='index.php?a=+random()'">

以上就是小编为大家带来的利用PHP绘图函数实现简单验证码功能的方法全部内容了,希望大家多多支持三水点靠木~

PHP 相关文章推荐
使用php来实现网络服务
Sep 15 PHP
windows7下安装php的php-ssh2扩展教程
Jul 04 PHP
PHP递归调用数组值并用其执行指定函数的方法
Apr 01 PHP
php动态函数调用方法
May 21 PHP
php判断访问IP的方法
Jun 19 PHP
浅谈PHP的数据库接口和技术
Dec 09 PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
Aug 04 PHP
PHP让网站移动访问更加友好方法
Feb 14 PHP
使用PHP反射机制来构造&quot;CREATE TABLE&quot;的sql语句
Mar 21 PHP
yii2 开发api接口时优雅的处理全局异常的方法
May 14 PHP
使用laravel的migrate创建数据表的方法
Sep 30 PHP
laravel返回统一格式错误码问题
Nov 04 PHP
Yii针对添加行的增删改查操作示例
Oct 18 #PHP
Yii遍历行下每列数据的方法
Oct 17 #PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
Oct 17 #PHP
php实现跨域提交form表单的方法【2种方法】
Oct 17 #PHP
php性能分析之php-fpm慢执行日志slow log用法浅析
Oct 17 #PHP
详解PHP原生DOM对象操作XML的方法
Oct 17 #PHP
php排序算法实例分析
Oct 17 #PHP
You might like
让PHP支持断点续传的源码
2010/05/16 PHP
简单了解WordPress开发中update_option()函数的用法
2016/01/11 PHP
HTML中嵌入PHP的简单方法
2016/02/16 PHP
PHP正则匹配日期和时间(时间戳转换)的实例代码
2016/12/14 PHP
laravel配置Redis多个库的实现方法
2019/04/10 PHP
Yii框架组件的事件机制原理与用法分析
2020/04/07 PHP
10个新的最有前途的JavaScript框架
2009/03/12 Javascript
javascript window对象属性整理
2009/10/24 Javascript
jQuery中prepend()方法使用详解
2015/08/11 Javascript
IE8下jQuery改变png图片透明度时出现的黑边
2015/08/30 Javascript
smartcrop.js智能图片裁剪库
2015/10/14 Javascript
JS组件Bootstrap Select2使用方法详解
2020/04/17 Javascript
js在ie下打开对话窗口的方法小结
2016/10/24 Javascript
BootStrap Table对前台页面表格的支持实例讲解
2016/12/22 Javascript
js从输入框读取内容,比较两个数字的大小方法
2017/03/13 Javascript
分享vue.js devtools遇到一系列问题
2017/10/24 Javascript
微信小程序methods中定义的方法互相调用的实例代码
2018/08/07 Javascript
详解微信小程序与内嵌网页交互实现支付功能
2018/10/22 Javascript
适合前端Vue开发童鞋的跨平台Weex的使用详解
2019/10/16 Javascript
[45:17]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第三场 1月9日
2021/03/11 DOTA
Python cookbook(数据结构与算法)同时对数据做转换和换算处理操作示例
2018/03/23 Python
对numpy中布尔型数组的处理方法详解
2018/04/17 Python
Python里字典的基本用法(包括嵌套字典)
2019/02/27 Python
PIL包中Image模块的convert()函数的具体使用
2020/02/26 Python
Python爬虫爬取、解析数据操作示例
2020/03/27 Python
解决Keras自带数据集与预训练model下载太慢问题
2020/06/12 Python
Python3爬虫中Splash的知识总结
2020/07/10 Python
几款主流好用的富文本编辑器(所见即所得常用编辑器)介绍
2021/03/17 Javascript
HTML5实现可缩放时钟代码
2017/08/28 HTML / CSS
Vans英国官方网站:美国南加州的原创极限运动潮牌
2017/01/20 全球购物
卡塔尔航空官方网站:Qatar Airways
2017/02/08 全球购物
记者岗位职责
2014/01/06 职场文书
作弊检讨书1000字
2014/02/01 职场文书
春节请假条
2014/04/11 职场文书
优秀班组申报材料
2014/12/25 职场文书
承诺书模板大全
2015/05/04 职场文书