利用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 模板高级篇总结
Dec 21 PHP
Smarty模板快速入门
Jan 04 PHP
php模拟登陆的实现方法分析
Jan 09 PHP
迪菲-赫尔曼密钥交换(Diffie?Hellman)算法原理和PHP实现版
May 12 PHP
PHP中$_SERVER使用说明
Jul 05 PHP
php把数组值转换成键的方法
Jul 13 PHP
fsockopen pfsockopen函数被禁用,SMTP发送邮件不正常的解决方法
Sep 20 PHP
PHP实现获取第一个中文首字母并进行排序的方法
May 09 PHP
详解PHP字符串替换str_replace()函数四种用法
Oct 13 PHP
PHP安装memcache扩展的步骤讲解
Feb 14 PHP
laravel 实现根据字段不同值做不同查询
Oct 23 PHP
php把文件设置为插件的技巧方法
Feb 03 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 需要掌握的东西 不做浮躁的人
2009/12/28 PHP
PHP 验证码的实现代码
2011/07/17 PHP
PHP中使用Imagick读取pdf并生成png缩略图实例
2015/01/21 PHP
php生成图片验证码的方法
2016/04/15 PHP
JavaScript常用全局属性与方法记录积累
2013/07/03 Javascript
JavaScript计时器示例分析
2015/02/05 Javascript
js检测iframe是否加载完成的方法
2015/11/26 Javascript
js以及jquery实现手风琴效果
2020/04/17 Javascript
详解AngularJS ng-class样式切换
2017/06/27 Javascript
jQuery实现的监听导航滚动置顶状态功能示例
2018/07/23 jQuery
javascript和php使用ajax通信传递JSON的实例
2018/08/21 Javascript
详解基于 Node.js 的轻量级云函数功能实现
2019/07/08 Javascript
Vue组件通信中非父子组件传值知识点总结
2019/12/05 Javascript
JS实现容器模块左右拖动效果
2020/01/14 Javascript
[55:11]完美世界DOTA2联赛PWL S2 SZ vs LBZS 第一场 11.26
2020/11/30 DOTA
window下eclipse安装python插件教程
2017/04/24 Python
Python sqlite3事务处理方法实例分析
2017/06/19 Python
解决python 无法加载downsample模型的问题
2018/10/25 Python
Python设计模式之策略模式实例详解
2019/01/21 Python
python机器学习库scikit-learn:SVR的基本应用
2019/06/26 Python
python字典嵌套字典的情况下找到某个key的value详解
2019/07/10 Python
如何将 awk 脚本移植到 Python
2019/12/09 Python
Python类绑定方法及非绑定方法实例解析
2020/10/09 Python
css3实现圆锥渐变conic-gradient效果
2020/02/12 HTML / CSS
HTML5新特性之type=file文件上传功能
2018/02/02 HTML / CSS
英国在线玫瑰专家:InterRose
2019/12/01 全球购物
大学生护理专业自荐信
2013/10/03 职场文书
法律专业应届本科毕业生求职信
2013/10/25 职场文书
大学生全国两会报告感想
2014/03/17 职场文书
广告创意求职信
2014/03/17 职场文书
信息合作协议书
2014/10/09 职场文书
2015年驾驶员工作总结
2015/04/29 职场文书
担保书范文
2019/07/09 职场文书
浅谈redis五大数据结构和使用场景
2021/04/12 Redis
浅谈css实现背景颜色半透明的两种方法
2021/12/06 HTML / CSS
Python利用FlashText算法实现替换字符串
2022/03/31 Python