利用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支持页面回退的两种方法[转]
Feb 14 PHP
精通php的十大要点(上)
Feb 04 PHP
php ob_flush,flush在ie中缓冲无效的解决方法
May 09 PHP
PHP中最容易忘记的一些知识点总结
Apr 28 PHP
php的一个简单加密解密代码
Jan 14 PHP
PHP中的闭包(匿名函数)浅析
Feb 07 PHP
PHP实现抓取迅雷VIP账号的方法
Jul 30 PHP
详解Grunt插件之LiveReload实现页面自动刷新(两种方案)
Jul 31 PHP
PHP 开发者该知道的 5 个 Composer 小技巧
Feb 03 PHP
MAC下通过改apache配置文件切换php多版本的方法
Apr 26 PHP
PHP设计模式之观察者模式定义与用法分析
Apr 04 PHP
php中isset与empty函数的困惑与用法分析
Jul 05 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
删除无限级目录与文件代码共享
2006/07/12 PHP
php Undefined index和Undefined variable的解决方法
2008/03/27 PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
2016/07/07 PHP
thinkPHP中_initialize方法实例分析
2016/12/05 PHP
浅谈Coreseek、Sphinx-for-chinaese、Sphinx+Scws的区别
2016/12/15 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
PHP+Session防止表单重复提交的解决方法
2018/04/09 PHP
些很实用且必用的小脚本代码
2006/06/26 Javascript
关于JavaScript的gzip静态压缩方法
2007/01/05 Javascript
JavaScript Archive Network 集合
2007/05/12 Javascript
javascript中用星号表示预录入内容的实现代码
2011/01/08 Javascript
仅IE支持clearAttributes/mergeAttributes方法使用介绍
2012/05/04 Javascript
JS动态添加option和删除option(附实例代码)
2013/04/01 Javascript
js 时间格式与时间戳的相互转换示例代码
2013/12/25 Javascript
jQuery的css()方法用法实例
2014/12/24 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
2015/03/13 Javascript
jQuery实现图片渐入渐出切换展示效果
2015/08/15 Javascript
js时钟翻牌效果实现代码分享
2020/07/31 Javascript
javascript实现2016新年版日历
2016/01/25 Javascript
Bootstrap与KnockoutJs相结合实现分页效果实例详解
2016/05/03 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
2016/07/22 Javascript
jsp 自动编译机制详细介绍
2016/12/01 Javascript
bootstrap 表单验证使用方法
2017/01/11 Javascript
Element-ui之ElScrollBar组件滚动条的使用方法
2018/09/14 Javascript
JS实现头条新闻的经典轮播图效果示例
2019/01/30 Javascript
vue中使用腾讯云Im的示例
2020/10/23 Javascript
使用TS来编写express服务器的方法步骤
2020/10/29 Javascript
深入浅析Python字符编码
2015/11/12 Python
Python应用03 使用PyQT制作视频播放器实例
2016/12/07 Python
Python装饰器知识点补充
2018/05/28 Python
python树莓派红外反射传感器
2019/01/21 Python
numpy矩阵数值太多不能全部显示的解决
2020/05/14 Python
CSS3制作半透明边框(Facebox)类似渐变
2012/12/09 HTML / CSS
教师求职自荐信
2014/03/09 职场文书
毕业实习证明范本
2015/06/16 职场文书
在pyCharm中下载第三方库的方法
2021/04/18 Python