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 和 MySQL 基础教程(二)
Oct 09 PHP
关于时间计算的结总
Dec 06 PHP
php 按指定元素值去除数组元素的实现方法
Nov 04 PHP
php实例分享之html转为rtf格式
Jun 02 PHP
php实现约瑟夫问题的方法小结
Mar 23 PHP
php中get_defined_constants函数用法实例分析
May 12 PHP
PHP连接MSSQL方法汇总
Feb 05 PHP
php等比例缩放图片及剪切图片代码分享
Feb 13 PHP
thinkPHP统计排行与分页显示功能示例
Dec 02 PHP
PHP生成短网址的思路以及实现方法的详解
Mar 25 PHP
CentOS7编译安装php7.1的教程详解
Apr 18 PHP
浅析PHP中的 inet_pton 网络函数
Dec 16 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 面向对象 final类与final方法
2010/05/05 PHP
让PHP支持断点续传的源码
2010/05/16 PHP
php字符串分割函数explode的实例代码
2013/02/07 PHP
php实现数组按指定KEY排序的方法
2015/03/30 PHP
php简单获取复选框值的方法
2016/05/11 PHP
javascript之ESC(第二类混淆)
2007/05/06 Javascript
关于document.cookie的使用javascript
2010/10/29 Javascript
jQuery实现的输入框选择时间插件用法实例
2015/02/28 Javascript
js字符串操作方法实例分析
2015/05/06 Javascript
JavaScript的Date()方法使用详解
2015/06/09 Javascript
Bootstrap实现弹性搜索框
2016/07/11 Javascript
jQuery实现点击表格单元格就可以编辑内容的方法【测试可用】
2016/08/01 Javascript
Node.js 日志处理模块log4js
2016/08/28 Javascript
完美解决jQuery fancybox ie 无法显示关闭按钮的问题
2016/11/29 Javascript
js判断一个字符串是以某个字符串开头的简单实例
2016/12/27 Javascript
详解Vue生命周期的示例
2017/03/10 Javascript
封装 axios+promise通用请求函数操作
2020/08/11 Javascript
Vue中inheritAttrs的使用实例详解
2020/12/31 Vue.js
[02:27]DOTA2英雄基础教程 莱恩
2014/01/17 DOTA
urllib2自定义opener详解
2014/02/07 Python
Python生成验证码实例
2014/08/21 Python
解决已经安装requests,却依然提示No module named requests问题
2018/05/18 Python
Python 利用scrapy爬虫通过短短50行代码下载整站短视频
2018/10/29 Python
关于Pycharm无法debug问题的总结
2019/01/19 Python
Django实现学员管理系统
2019/02/26 Python
Python实现EXCEL表格的排序功能示例
2019/06/25 Python
python绘制趋势图的示例
2020/09/17 Python
HTML5本地存储之Database Storage应用介绍
2013/01/06 HTML / CSS
比利时的在线灯具店:Lampen24.be
2019/07/01 全球购物
俄罗斯最大的隐形眼镜销售网站:Ochkov.Net
2021/02/07 全球购物
物流仓储实习自我鉴定
2013/09/25 职场文书
村官学习十八大感想
2014/01/15 职场文书
生死抉择观后感
2015/06/09 职场文书
生日宴会家属答谢词
2015/09/29 职场文书
MySQL下使用Inplace和Online方式创建索引的教程
2021/05/26 MySQL
Python Flask实现进度条
2022/05/11 Python