利用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 相关文章推荐
smtp邮件发送一例
Oct 09 PHP
php判断字符以及字符串的包含方法属性
Aug 30 PHP
Uchome1.2 1.5 代码学习 common.php
Apr 24 PHP
mayfish 数据入库验证代码
Apr 30 PHP
php中http_build_query 的一个问题
Mar 25 PHP
PHP中SESSION使用中的一点经验总结
Mar 30 PHP
PHP实现把文本中的URL转换为链接的auolink()函数分享
Jul 29 PHP
thinkphp中memcache的用法实例
Nov 29 PHP
浅谈PHP中单引号和双引号到底有啥区别呢?
Mar 04 PHP
php多线程并发实现方法
Sep 30 PHP
PHP实现二维数组去重功能示例
Jan 12 PHP
php封装一个异常的处理类
Jun 08 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/11/16 PHP
php使用curl存储cookie的示例
2014/03/31 PHP
PHP计算指定日期所在周的开始和结束日期的方法
2015/03/24 PHP
10款实用的PHP开源工具
2015/10/23 PHP
php版微信公众平台接口开发之智能回复开发教程
2016/09/22 PHP
php中让人头疼的浮点数运算分析
2016/10/10 PHP
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
2011/07/28 Javascript
简单时间提示DEMO从0开始一直进行计时
2013/11/19 Javascript
JavaScript使用Range调色及透明度实例
2016/09/25 Javascript
JS 调用微信扫一扫功能
2016/12/22 Javascript
AngularJS实现表单验证功能
2017/01/09 Javascript
nodejs微信扫码支付功能实现
2018/02/17 NodeJs
node学习笔记之读写文件与开启第一个web服务器操作示例
2019/05/29 Javascript
微信小程序实现点击图片放大预览
2019/10/21 Javascript
小程序怎样让wx.navigateBack更好用的方法实现
2019/11/01 Javascript
Vue 通过公共字段,拼接两个对象数组的实例
2019/11/07 Javascript
vue 解除鼠标的监听事件的方法
2019/11/13 Javascript
javascript实现贪吃蛇小练习
2020/07/05 Javascript
Python程序设计入门(5)类的使用简介
2014/06/16 Python
使用python编写脚本获取手机当前应用apk的信息
2014/07/21 Python
Python实现矩阵加法和乘法的方法分析
2017/12/19 Python
numpy.linspace 生成等差数组的方法
2018/07/02 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
Django model 中设置联合约束和联合索引的方法
2019/08/06 Python
python 采用paramiko 远程执行命令及报错解决
2019/10/21 Python
学生个人的自我评价分享
2013/11/05 职场文书
建筑行业的大学生自我评价
2013/12/08 职场文书
高中班级口号
2014/06/09 职场文书
购房委托书
2014/10/15 职场文书
营销计划书
2015/01/17 职场文书
交通事故起诉书
2015/05/19 职场文书
法人代表证明书范本
2015/06/18 职场文书
教师研修随笔感言
2015/11/18 职场文书
go原生库的中bytes.Buffer用法
2021/04/25 Golang
Vue实现跑马灯样式文字横向滚动
2021/11/23 Vue.js
Python制作春联的示例代码
2022/01/22 Python