使用织梦dedecms网站的朋友有很多,也经常遇到在登陆后台的时候验证码不显示的问题,没有验证码就不能登陆,所以这个问题是一定要解决的。
打开验证码生成文件 Include/vdimgck.php
找到
for($i=0;$i<$rndcodelen;$i++)
{
$bc = mt_rand(0, 1);
$rndstring[$i] = strtoupper($rndstring[$i]);
$c_fontColor = $fontColor[mt_rand(0,4)];
$y_pos = $i==0 ? 4 : $i*($font_size+2);
$c = mt_rand(0, 15);
@imagettftext($im, $font_size, $c, $y_pos, 19, $c_fontColor, $font_file, $rndstring[$i]);
$lastc = $rndstring[$i];
}
Imagettftext()函数没有成功的执行导致了验证码只显示背景,不显示字母,具体的原因就是文字路径不对,在解决的时候首先要看的就是确定字体是不是默认的ggbi.ttf,字体存放在include/data/fonts/,然后找到for($i=0;$i<$rndcodelen;$i++),在此代码前加上$font_file= str_replace("//","/",$font_file);