本帖最后由 hack9905 于 2011-9-24 16:45 编辑
spbm 发表于 2011-7-18 10:25 
后台:
SVOTE人物图片投票系统的验证码不能显示的解决办法:
打开:网站主目录\source\plugin\spbm_dzx\spbm.seccode.php这个文件,
找到如下文件中如下显示的红色代码,去掉$vcodes.=$authnum中的 . 也就是改为$vcodes=$authnum
然后保存文件即可!
<?php
session_start();
//生成验证码图
Header("Content-type: image/PNG");
//长与宽
$im = imagecreate(44,18);
// 设置背景色:
$back = ImageColorAllocate($im, 245,245,245);
// 填充背景色:
imagefill($im,0,0,$back);
srand((double)microtime()*1000000);
$vcodes;
//生成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);
}
//加入干扰象素
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);
// 将四位的验证码保存在 SESSION 里,登录时调用对比
$_SESSION["seccodes"]=$vcodes;
?>
特别申明,此方法源自【SXOOO.COM】SVOTE人物图片投票系统的验证码漏洞修改
https://discuz.dismall.com/thread-2268435-1-1.html,只是版本不一样,之前的文件是sxooo.seccode.php,
而3.0版本的文件是spbm.seccode.php
感谢这位朋友!感谢spbm的贡献! |