修改PHPCMS2008验证码

下面提到的行数是相对官方原版checkcode.php文件,如你已改过该文件,请搜索对应代码修改即可。

1、修改验证码背景图片的大小:
找到3132
$imageX = strlen($radomstring)*8;  //
验证码图片的宽度,修改成你需要的值

$imageY = 20;  //
验证码图片的高度,修改成你需要的值

2、修改验证码背景图片的背景色:
找到46行: imagefill($im, 0, 0, imagecolorallocate($im, 250, 253, 254));
修改第二个()里的三个数字为你需要的背景颜色(色彩三原色,其值从 0 255)。

3、修改验证码的位数:
以修改为5位为例(默认是4位),找到第48-51
imagettftext($im, 12, rand(30, -30), 5, rand(14, 16), $foregroundArr[rand(0,3)], PHPCMS_ROOT.'include/fonts/ALGER.TTF', $string[0]);
imagettftext($im, 12, rand(50, -50), 20, rand(14, 16), $foregroundArr[rand(0,3)], PHPCMS_ROOT.'include/fonts/ARIALNI.TTF', $string[1]);

imagettftext($im, 12, rand(50, -50), 35, rand(14, 16), $foregroundArr[rand(0,3)], PHPCMS_ROOT.'include/fonts/ALGER.TTF', $string[2]);

imagettftext($im, 12, rand(30, -30), 50, rand(14, 16), $foregroundArr[rand(0,3)], PHPCMS_ROOT.'include/fonts/arial.ttf', $string[3]);
      
1)增加一行,并将相关变量数值增加
imagettftext($im, 12, rand(30, -30), 5, rand(14, 16), $foregroundArr[rand(0,4)], PHPCMS_ROOT.'include/fonts/ALGER.TTF', $string[0]);

imagettftext($im, 12, rand(50, -50), 20, rand(14, 16), $foregroundArr[rand(0,4)], PHPCMS_ROOT.'include/fonts/ARIALNI.TTF', $string[1]);

imagettftext($im, 12, rand(50, -50), 35, rand(14, 16), $foregroundArr[rand(0,4)], PHPCMS_ROOT.'include/fonts/ALGER.TTF', $string[2]);

imagettftext($im, 12, rand(30, -30), 50, rand(14, 16), $foregroundArr[rand(0,4)], PHPCMS_ROOT.'include/fonts/arial.ttf', $string[3]);

imagettftext($im, 12, rand(30, -30), 65, rand(14, 16), $foregroundArr[rand(0,4)], PHPCMS_ROOT.'include/fonts/arial.ttf', $string[4]);

2修改第29$_SESSION['checkcode'] = $string = substr($radomstring,0,4); //only display 4 str
$_SESSION['checkcode'] = $string = substr($radomstring,0,5); //only display 5 str
3)修改第28 $radomstring = $const[0] . $vow[0] .$const[2] . $const[1] . $vow[1] . $const[3] . $vow[3] . $const[4];
$radomstring = $const[0] . $vow[0] .$const[2] . $const[1] . $vow[1] . $const[3] . $vow[3] . $const[4]. $const[5];
通过以上三步即可修改验证码的位数,以此类推可将验证码修改成678等多位。 注:验证码位数过多时,可能只显示前几位,这时要把验证码背景图片的宽度设宽点。

4、修改验证码字体大小和样式:
找到第48-51行,每一行控制一个验证码字符的样式(以第48行为例,即第一个验证码字符):
imagettftext($im, 12, rand(30, -30), 5, rand(14, 16), $foregroundArr[rand(0,3)], PHPCMS_ROOT.'include/fonts/ALGER.TTF', $string[0]);

说明:修改验证码字体大小和样式时,可能显示不全,这时需要综合调整下述几点的参数及验证码背景图片的宽度和高度等。       
1)修改验证码字体大小:
第48行imagettftext($im, 12, 中的“12”即为字体大小,数值越大字体越大
2)修改验证码字符的左右倾斜度:
第48行imagettftext($im, 12, rand(30, -30), 中的“rand(30, -30) 为验证码字符的左右倾斜度,调整括号里面的数字可改变字符向左和向右的倾斜程度。
3)修改验证码字符间的距离:
第48行imagettftext($im, 12, rand(30, -30), 5, 中的“5”为每个验证码字符离左侧的距离,通过改变数值看调整每个验证码间的距离。
4)修改验证码字符的上下漂移度:
第48行imagettftext($im, 12, rand(30, -30), 5, rand(14, 16), 中的“rand(14, 16) 为验证码字符的上下漂移度,调整括号里面的数字可改变字符向上和向下的漂移程度。
5)修改验证码的字体:
第48行PHPCMS_ROOT.'include/fonts/ALGER.TTF', 中的“ALGER.TTF”为每个验证码字符的字体,存放在include/fonts文件夹中,把你喜欢的字体文件放在该文件夹,然后修改对应的行即可。

5、修改验证码图片边框颜色:
找到第55行: $border = imagecolorallocate($im, 133, 153, 193); 修改()里的三个数字为你需要的边框颜色

6、修改上的小点的颜色:
找到第59行: $pointcol = imagecolorallocate($im, rand(0,255), rand(0,255), rand(0,255)); 修改()里的数字为你需要的小点颜色范围
Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值