`
ol_beta
  • 浏览: 282762 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

分享一个php验证码程序 简单 实用

    博客分类:
  • php
阅读更多

废话不说,直接上代码:

<?php
Header("Content-type: image/gif");
/*
* 初始化
*/
$border = 0; //是否要边框 1要:0不要
$how = 4; //验证码位数
$w = $how * 15; //图片宽度
$h = 20; //图片高度
$fontsize = 5; //字体大小
$alpha = "abcdefghijkmnopqrstuvwxyz"; //验证码内容1:字母
$number = "023456789"; //验证码内容2:数字
$randcode = ""; //验证码字符串初始化
srand((double) microtime() * 1000000); //初始化随机数种子
$im = ImageCreate($w, $h); //创建验证图片
/*
* 绘制基本框架
*/
$bgcolor = ImageColorAllocate($im, 255, 255, 255); //设置背景颜色
ImageFill($im, 0, 0, $bgcolor); //填充背景色
if ($border) {
$black = ImageColorAllocate($im, 0, 0, 0); //设置边框颜色
ImageRectangle($im, 0, 0, $w -1, $h -1, $black); //绘制边框
}
/*
* 逐位产生随机字符
*/
for ($i = 0; $i < $how; $i++) {
$alpha_or_number = mt_rand(0, 1); //字母还是数字
$str = $alpha_or_number ? $alpha : $number;
$which = mt_rand(0, strlen($str) - 1); //取哪个字符
$code = substr($str, $which, 1); //取字符
$j = !$i ? 4 : $j +15; //绘字符位置
$color3 = ImageColorAllocate($im, mt_rand(0, 100), mt_rand(0, 100), mt_rand(0, 100)); //字符随即颜色
ImageChar($im, $fontsize, $j, 3, $code, $color3); //绘字符
$randcode .= $code; //逐位加入验证码字符串
}
/*
* 添加干扰
*/
for ($i = 0; $i < 5; $i++) //绘背景干扰线
{
$color1 = ImageColorAllocate($im, mt_rand(0, 255), mt_rand(0, 255), mt_rand(0, 255)); //干扰线颜色
ImageArc($im, mt_rand(-5, $w), mt_rand(-5, $h), mt_rand(20, 300), mt_rand(20, 200), 55, 44, $color1); //干扰线
}
for ($i = 0; $i < $how * 40; $i++) //绘背景干扰点
{
$color2 = ImageColorAllocate($im, mt_rand(0, 255), mt_rand(0, 255), mt_rand(0, 255)); //干扰点颜色
ImageSetPixel($im, mt_rand(0, $w), mt_rand(0, $h), $color2); //干扰点
}
//把验证码字符串写入session
session_start();
$_SESSION['randcode'] = $randcode;
/*绘图结束*/
Imagegif($im);
ImageDestroy($im);
?>
 
分享到:
评论

相关推荐

    PHP实例教程-网页登陆验证码的实现

    PHP实例教程-网页登陆验证码的实现,通常验证码做的不好看,这段程序教你做一个好看且实用的验证码。

    PHP实现GIF图片验证码

    这是一个用PHP生成GIF动画来实现动态图片验证码的程序,非常实用,是php用户注册登录界面经常需要用到的验证码程序,有需要GIF动态图片验证码功能的朋友可以收藏一下。 第一步:创建ImageCode.php文件,验证码生成...

    PHP程序开发范例宝典III

    实例047 同一个页面中的多表单提交 66 实例048 获取表单中提交的所有数据 68 实例049 以文件域的形式显示数据信息 70 第3章 CSS与JavaScript脚本的应用 73 3.1 文字特效 74 实例050 逐个闪烁的文字 74 ...

    02408仿天涯论坛模板的免费论坛系统(php在线问答系统源码)v2.0.zip

    程序本身包含一个PC版网站和一个手机版网站,如果把手机网站首页网址嵌入到WebView中,可以在1小时之内制作成功一个安卓版APP安装包,分分钟就能拥有一个自己的APP应用,肯定很拉风吧?后台管理系统支持移动设备,可...

    简单实用的PHP留言本 v1.3

    主要功能:  1、验证码发帖,有效避免垃圾信息;  2、过滤HTML代码,运行更安全;  3、后台可将留言置顶、删除、回复、编辑等常规操作;  4、可设置留言版标题、留言版LOGO、每页显示留言条数等...

    PHP网络编程技术与实践 源码

    10.3 一个简单的TCP/IP服务器端和客户端实例讲解 10.4 本章小结 第11章 用户登录注册模块 11.1 数据库设计 11.2 最基本的注册模块 11.2.1 页面效果 11.2.2 代码实现 11.3 带验证码的注册模块 11.3.1 页面效果 11.3.2...

    ZTJMessage留言板 3.0 UTF8.zip

    可实现留言、回复、审核等功能,页面设计简洁大方,功能实用,适用于各类网站添加一个意见反馈的功能,也可用于网上咨询、公告发布等用途,甚至通过修改模板还可以做成一个简单的微博系统,如果你是一个PHP新手,...

    基于PHP实现的网上留言管理系统的设计

    一个设计合理,界面优美的网上留言程序能从侧面体现网站良好的服务,给来访用户留下美好的印象,增强用户对网站的信心。 网上留言系统利用网络一定的时效性和广泛的传播面,可以方便人与人之间的信息交流和互动。...

    多多php网页留言本

    程序名称:多多留言本 程序版本:v1.2 运行环境:php+mysql 程序制作:QQ:249834575 程序演示:http://www.codefans.net/guestbook/ 官方网站:http://www.codefans.net/ 2008年07月10日多多留言本 v1.2正式发布:...

    php+mysql实现用户注册登陆的方法

    这是一款利用php与mysql数据库实现的用户注册与登录代码,功能也是比较简单实用的用户注册程序,同时也加了用户登录时验证码程序,这样做就安全了很多,代码如下: 复制代码 代码如下:&lt;!doctype html public “-//w3c/...

    (全)传智播客PHP就业班视频完整课程

    解答学生问题--一个ip绑定多个域名 8-19 2.php运行过程时序图 php书写规范 8-19 3.php基本语法介绍 php数据类型介绍 8-19 4.整型细节说明 8-19 5.布尔细节 浮点数细节 字符串细节 算术运算符① 8-19 6.算术运算符② ...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例128 获取数组中最后一个元素 158 实例129 去除数组中的重复元素 158 实例130 字符串与数组的转换 159 实例131 对数组元素进行随机排序 160 实例132 随机抽取数组中元素 161 实例133 二维数组的输出 162 实例134 ...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例128 获取数组中最后一个元素 158 实例129 去除数组中的重复元素 158 实例130 字符串与数组的转换 159 实例131 对数组元素进行随机排序 160 实例132 随机抽取数组中元素 161 实例133 二维数组的输出 162 实例134 ...

    JAVA上百实例源码以及开源项目源代码

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    国微CMS学校网站系统(PHP168 S系列) v20180925.zip

    国微CMS学校网站系统是一个以php MySQL进行开发的学校网站系统。国微学校方案重点为大学、中学、技校提供高性能解决方案,可快速将学校信息化迈入实用高效的水平。功能包括:精品课程系统、录取查询系统、学籍查询...

    JAVA上百实例源码以及开源项目

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    蓝宝石ASP留言本程序 v1.0 免费版.rar

    这个留言本的制作的目的是是制作一个功能齐全,实用美观,便于嵌入网站的留言本。这个留言本不用安装,直接打开index.asp就可以使用。 实现功能: 1.access高效分页功能 2.防止sql注入功能 3.留言审核开关功能 4...

    MFH网盘V2.0战神汉化版 v2.0.zip

    友情提示:分流上传功能还有下载地址优化功能对虚拟主机要求较高,,如果程序无法正常运行,请将将这两项功能关闭. 经测试,关闭分流上传功能(也就是多服务器上传)和下载地址优化后,可以在99%的虚拟主机上完美...

Global site tag (gtag.js) - Google Analytics