`
xfcode
  • 浏览: 22519 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

PHP变色验证码实例

    博客分类:
  • php
 
阅读更多
PHP实现变色验证码。
代码:
<?php
/**
* php变色验证码
* edit: www.jbxue.com
*/
header("Content-type: image/png,charset='utf-8'"); 
$im = imagecreatetruecolor(400, 30); 
//白色 
$white = imagecolorallocate($im, 255, 255, 255); 
//红色 
$red = imagecolorallocate($im, 255, 0, 0); 
//黑色 
$black=imagecolorallocate($im, 0, 0, 0); 
//绿色 
$green=imagecolorallocate($im, 0, 255, 0); 
//蓝色 
$blue=imagecolorallocate($im, 0, 0, 255); 
$color_arr=array($green,$blue,$red); 
$color=array_rand($color_arr); 
$text = '我靠这验证码太变态啦'; 
$textlen=iconv_strlen($text,'utf-8');//计算字符串长度 
//随机截取两个字符,变色显示 
$p1=rand(1,$textlen)-1; 
while(($p2=rand(1,$textlen)-1)==$p1); 
$w1=iconv_substr($text,$p1,1,'utf-8'); 
$w2=iconv_substr($text,$p1,1,'utf-8'); 
//字体文件 (PS:T不错的php Q扣峮:276167802,验证:csl) 
$font = 'simkai.ttf'; 
imagefilledrectangle($im, 0, 0, 399, 29, $white); 
for($i=0;$i<$textlen;$i++) 
{ 
if($i==$p1||$i==$p2) 
{ 
imagettftext($im, 15, 0, 20*($i-1)+20, 20, $color_arr[$color], $font, iconv_substr($text,$i,1,'utf-8')); 
} 
else 
{ 
imagettftext($im, 15, 0, 20*($i-1)+20, 20, $black, $font, iconv_substr($text,$i,1,'utf-8')); 
} 
} 
imagepng($im); 
imagedestroy($im); 
?> 

验证码中的字符并不是同一种颜色,让用户输入指定颜色的验证码,这样安全性会更好的。
分享到:
评论

相关推荐

    PHP实现变色验证码实例

    验证码想必大家都有见到过吧,在本文为大家介绍下PHP如何实现变色验证码,感兴趣的朋友可以参考下

    java_变色闪现_算数验证码

    在Java中实现变色闪现的算数验证码涉及到多个技术领域,包括图像处理、动态效果生成以及随机数算法等。下面将详细探讨这些知识点。 首先,我们要了解算数验证码的基本原理。算数验证码通常由两个或四个数字组成,...

    StringGrid实例 单元格变色等

    本实例将深入探讨如何利用StringGrid实现单元格颜色的变化以及其他相关功能,帮助你更好地理解和掌握这个控件。 StringGrid是TStringGrid的简称,它是VCL(Visual Component Library)库中的一个组成部分,提供了...

    C# 焦点变色 实例源码(窗体技巧)

    总之,"C#焦点变色"实例源码旨在教授开发者如何在C#应用程序中提高用户交互体验,通过改变控件颜色以提示用户当前的焦点位置。无论是简单的事件响应还是复杂的样式和模板定制,都可以实现这一功能,为用户提供更加...

    MT4变色均线_变色均线_变色指标_mt4_外汇指标_mt4均线变色_

    变色均线作为MT4(MetaTrader 4)平台的一种自定义指标,它为交易者提供了更直观、更敏感的市场趋势识别方式。本文将深入探讨变色均线的概念、原理、应用及其在MT4平台上的设置与使用。 变色均线,顾名思义,是一种...

    java生成图片验证码实例代码

    Java生成图片验证码是一种常见的安全措施,用于防止自动化脚本或机器人进行恶意操作,例如批量注册、刷票等。...通过这个简单的实例,开发者可以进一步扩展和优化验证码生成器,以适应不同应用场景的需求。

    MT4编程实例:会变色的均线.doc

    MT4编程实例:会变色的均线.doc

    jq 验证码插件jq 验证码插件

    验证码插件在网页表单验证中扮演着至关重要的角色,它可以有效地防止自动化程序或机器人进行恶意操作,如垃圾邮件发送、刷票等。在给定的标题和描述中提到的"jq 验证码插件",指的是基于jQuery库开发的验证码插件,...

    Visual C# .NET精彩编程实例集锦

    实例1 如何使用错误提醒控件 实例2 如何使用信息提示控件 实例3 如何使用菜单控件 实例4 如何使用工具栏控件 实例5 如何使用状态栏控件 实例6 如何使用托盘控件 实例7 如何使用标签页控件 实例8 如何使用进度条控件 ...

    javascript网页特效实例大全(8-12)

    第8章 图形图像与多媒体 335 8.1 图片大小 336 实例215 打开自定义大小的图片 336 实例216 图片放大缩小 ...实例315 带验证码的登录页面 500 12.4 其他 501 实例316 使用Script Encoder加密工具加密 501

    jQuery轻松实现表格的隔行变色和点击行变色的实例代码

    jQuery轻松实现表格的隔行变色和点击行变色的实例代码 &lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; &lt;...

    gridview排序 变色 分页添加命令实例

    在本实例中,“gridview排序 变色 分页添加命令”涉及到的关键知识点包括GridView的排序、行变色以及分页功能的实现。 1. GridView排序: GridView控件默认支持单击列头进行升序或降序排序。首先,需要在GridView...

    java 生成图片验证码

    在IT领域,验证码(CAPTCHA)是一种用于验证用户是否为人类的自动程序,通常用于防止恶意机器人或自动化脚本的滥用。在Java编程语言中,我们可以创建一个图像验证码生成器来实现这一功能。下面我们将详细探讨如何...

    10.8专用变色龙

    "10.8专用变色龙"是一款专为安装Mac OS X Mountain Lion(10.8)系统设计的引导工具,它在Mac爱好者和开发者中备受推崇。变色龙,或者称为Chameleon,是一个开源的启动加载器,其主要功能是帮助非苹果硬件设备顺利...

    mt4 变色均线 变色K线源代码 带EA

    变色均线和变色K线是MT4平台上的技术分析工具,帮助交易者识别市场趋势和潜在的交易机会。源代码的分享使得交易者有机会了解这些工具的工作原理,甚至进行个性化定制以适应自己的交易策略。 首先,我们来讨论“变色...

    JavaScript应用实例-听歌变色.js

    JavaScript应用实例-听歌变色.js

    JavaScript应用实例-list隔行变色.js

    JavaScript应用实例-list隔行变色.js

Global site tag (gtag.js) - Google Analytics