php 验证码实例代码


Posted in PHP onJune 01, 2010

如果要用php的画图函数,首先要启用这个模块的功能。就是把php.ini中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); //把背景颜色填充到刚刚画出来的图片中 
$vcodes = ""; 
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); 
} 
$_SESSION['VCODE'] = $vcodes; 
for($i=0;$i<100;$i++) //加入干扰象素 
{ 
$randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255)); 
imagesetpixel($im, rand()%70 , rand()%30 , $randcolor); // 画像素点函数 
} 
ImagePNG($im); 
ImageDestroy($im); 
?>

基本就是这样实现了,其实如果给图片打水印也无非就是往图片里面写字,原理都差不多的。

使用的地方直接

<img src="xxx.php" /> 填写这个php文件的名字,就可以使用了。

PHP 相关文章推荐
php 求质素(素数) 的实现代码
Apr 12 PHP
如何在PHP中使用正则表达式进行查找替换
Jun 13 PHP
php过滤HTML标签、属性等正则表达式汇总
Sep 22 PHP
php中spl_autoload详解
Oct 17 PHP
ThinkPHP2.x防范XSS跨站攻击的方法
Sep 25 PHP
yii实现model添加默认值的方法(2种方法)
Jan 06 PHP
PHP编写学校网站上新生注册登陆程序的实例分享
Mar 21 PHP
PHP中常用的数组操作方法笔记整理
May 16 PHP
thinkPHP中钩子的使用方法实例分析
Nov 16 PHP
PHP中register_shutdown_function函数的基础介绍与用法详解
Nov 28 PHP
php实现微信公众号创建自定义菜单功能的实例代码
Jun 11 PHP
php使用redis的几种常见操作方式和用法示例
Feb 20 PHP
php trim 去除空字符的定义与语法介绍
May 31 #PHP
phpmyadmin 3.4 空密码登录的实现方法
May 29 #PHP
Discuz!下Memcache缓存实现方法
May 28 #PHP
备份mysql数据库的php代码(一个表一个文件)
May 28 #PHP
php下将图片以二进制存入mysql数据库中并显示的实现代码
May 27 #PHP
php set_time_limit(0) 设置程序执行时间的函数
May 26 #PHP
PHP 可阅读随机字符串代码
May 26 #PHP
You might like
介绍php设计模式中的工厂模式
2008/06/12 PHP
PHP 编程安全性小结
2010/01/08 PHP
php使用ICQ网关发送手机短信
2013/10/30 PHP
php最简单的删除目录与文件实现方法
2014/11/28 PHP
一个简单的JavaScript数据缓存系统实现代码
2010/10/24 Javascript
js监听输入框值的即时变化onpropertychange、oninput
2011/07/13 Javascript
JavaScript中Cookie操作实例
2015/01/09 Javascript
jquery实现最简单的滑动菜单效果代码
2015/09/12 Javascript
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
2017/03/23 jQuery
vue配置多页面的实现方法
2018/05/22 Javascript
详解Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)
2019/04/20 Javascript
解决layui的input独占一行的问题
2019/09/10 Javascript
JS动态图片的实现方法完整示例
2020/01/13 Javascript
Element Dialog对话框的使用示例
2020/07/26 Javascript
Vue实现简易购物车页面
2020/12/30 Vue.js
Python3.6 Schedule模块定时任务(实例讲解)
2017/11/09 Python
Python使用遗传算法解决最大流问题
2018/01/29 Python
Python操作mongodb数据库进行模糊查询操作示例
2018/06/09 Python
Python 实现异步调用函数的示例讲解
2018/10/14 Python
python获取依赖包和安装依赖包教程
2020/02/13 Python
如何安装并在pycharm使用selenium的方法
2020/04/30 Python
python中wx模块的具体使用方法
2020/05/15 Python
Python新手学习函数默认参数设置
2020/06/03 Python
Python爬虫小例子——爬取51job发布的工作职位
2020/07/10 Python
Django+RestFramework API接口及接口文档并返回json数据操作
2020/07/12 Python
Python内存泄漏和内存溢出的解决方案
2020/09/26 Python
HTML5有哪些新特征
2015/12/01 HTML / CSS
H&M美国官网:欧洲最大的服饰零售商
2016/09/07 全球购物
*p++ 自增p 还是p所指向的变量
2016/07/16 面试题
初中生期末考试的自我评价
2013/12/17 职场文书
财务管理职业生涯规划范文
2013/12/27 职场文书
交通安全演讲稿
2014/01/07 职场文书
普通简短的个人自我评价
2014/02/15 职场文书
文明风采获奖感言
2014/02/18 职场文书
2015年入党积极分子培养考察意见
2015/08/12 职场文书
Python PIL按比例裁剪图片
2022/05/11 Python