PHP登录验证码的实现与使用方法


Posted in PHP onJuly 07, 2016

本文实例讲述了PHP登录验证码的实现与使用方法。分享给大家供大家参考,具体如下:

1. 新建code.php验证码生成文件

在此之前必须打开php的GD库,修改php.ini文件的配置,取消extension=php_gd2.dll前面的分号。代码如下:

<?php
session_start();
//生成验证码图片
Header("Content-type: image/PNG");
$im = imagecreate(44,18);
$back = ImageColorAllocate($im, 245,245,245);
imagefill($im,0,0,$back); //背景
srand((double)microtime()*1000000);
//生成4位数字
for($i=0;$i<4;$i++){
$font = ImageColorAllocate($im, rand(100,255),rand(0,100),rand(100,255));
$authnum=rand(1,9);
$vcodes.=$authnum;
imagestring($im, 5, 2+$i*10, 1, $authnum, $font);
}
for($i=0;$i<100;$i++) //加入干扰象素
{
$randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
imagesetpixel($im, rand()p , rand()0 , $randcolor);
}
ImagePNG($im);
ImageDestroy($im);
$_SESSION['Checknum'] = $vcodes;
?>

2. 显示验证码图片

在需要显示验证码的页面中加入

<input type="text" name="passcode" >
<img src="code.php">

3.判断并获取验证码的值

验证码是通过第一步骤代码中的$_SESSION['Checknum'] = $vcodes;赋的值,所以验证码的值存在$_SESSION['Checknum']当中。在验证页面,使用以下代码,

...
session_start();//启动会话
$code=$_POST["passcode"];
if( $code == $_SESSION["Checknum"])
{
...
}

即可完成验证码登录。

运行截图如下:

PHP登录验证码的实现与使用方法

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
杏林同学录(八)
Oct 09 PHP
PHP爆绝对路径方法收集整理
Sep 17 PHP
php获取qq用户昵称和在线状态(实例分析)
Oct 27 PHP
PHP之sprintf函数用法详解
Nov 12 PHP
php使用Jpgraph绘制饼状图的方法
Jun 10 PHP
PHP如何通过AJAX方式实现登录功能
Nov 23 PHP
简单谈谈PHP中strlen 函数
Feb 27 PHP
laravel 5.3中自定义加密服务的方案详解
May 09 PHP
浅谈PHP中new self()和new static()的区别
Aug 11 PHP
PHP设计模式之注册树模式分析
Jan 26 PHP
PHP实现负载均衡session共享redis缓存操作示例
Aug 22 PHP
PHP fopen函数用法实例讲解
Feb 15 PHP
PHP常见的6个错误提示及解决方法
Jul 07 #PHP
php生成mysql的数据字典
Jul 07 #PHP
php自定义函数实现JS的escape的方法示例
Jul 07 #PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
Jul 07 #PHP
PHP使用自定义方法实现数组合并示例
Jul 07 #PHP
PHP记录和读取JSON格式日志文件
Jul 07 #PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
Jul 07 #PHP
You might like
header跳转和include包含问题详解
2012/09/08 PHP
IIS6.0 开启Gzip方法及PHP Gzip函数分享
2014/06/08 PHP
thinkPHP学习笔记之安装配置篇
2015/03/05 PHP
PHP获取photoshop写入图片文字信息的方法
2015/03/31 PHP
PHP记录搜索引擎蜘蛛访问网站足迹的方法
2015/04/15 PHP
PHP获取一年有几周以及每周开始日期和结束日期
2015/08/06 PHP
PHP实现微信退款功能
2018/10/02 PHP
PHP基于session.upload_progress 实现文件上传进度显示功能详解
2019/08/09 PHP
javascript的console.log()用法小结
2012/05/31 Javascript
JS中如何判断传过来的JSON数据中是否存在某字段
2014/08/18 Javascript
javascript数组遍历for与for in区别详解
2014/12/04 Javascript
JavaScript中的console.log()函数详细介绍
2014/12/29 Javascript
介绍JavaScript的一个微型模版
2015/06/24 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
jQuery中DOM节点删除之empty与remove
2017/01/20 Javascript
jQuery实现获取隐藏div高度的方法示例
2017/02/09 Javascript
Angular 4中如何显示内容的CSS样式示例代码
2017/11/06 Javascript
基于elementUI使用v-model实现经纬度输入的vue组件
2019/05/12 Javascript
[02:40]DOTA2英雄基础教程 先知
2013/11/29 DOTA
python 查找字符串是否存在实例详解
2017/01/20 Python
python Crypto模块的安装与使用方法
2017/12/21 Python
Python读取Word(.docx)正文信息的方法
2018/03/15 Python
Python中logging实例讲解
2019/01/17 Python
Python中判断子串存在的性能比较及分析总结
2019/06/23 Python
Python实现爬取并分析电商评论
2020/06/19 Python
Python实现淘宝秒杀功能的示例代码
2021/01/19 Python
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
英国知名衬衫品牌美国网站:Charles Tyrwhitt美国
2016/08/28 全球购物
荷兰之家英文站:Holland at Home
2016/10/26 全球购物
法国在线药房:Shop Pharmacie
2019/11/26 全球购物
中学生运动会通讯稿大全
2014/09/18 职场文书
女儿满月酒致辞
2015/07/29 职场文书
先进个人主要事迹范文
2015/11/04 职场文书
祝福语集锦:给满月宝宝的祝福语
2019/11/20 职场文书
详解Java七大阻塞队列之SynchronousQueue
2021/09/04 Java/Android
Python+Selenium实现读取网易邮箱验证码
2022/03/13 Python