织梦DEDECMS登录验证码不显示的4种解决方法

时间:2018-05-14 22:28 作者:飞之悦 点击:

织梦这个程序使用的人多了各种bug也会随着增多,而作为一个非官方性质的团体来说处理这各种各样的问题就显得很鸡肋,所以对于一个站长们来说遇到这个问题只有自己想办法来解决。今天那么飞之悦就给大家详细的说明一下当我们要的遇到了登录页面后台验证吗不显示的情况该如何来解决进行处理,其实很简单的,下面飞之悦就把所有的方法都给给大家说明,希望能帮助到大家。
关于织梦后台验证码不能显示这个问题相信很多站长都遇到过,到底验证码不能显示这个问题怎么解决呢:1:取消掉验证码 2:修复验证码错误
4种处理办法:
A、去验证码
去掉 DEDECMS5.6及dedecms5.7 验证码有效方法
在[验证码安全设置]里,说修改后的保存实际上是修改了data\safe\inc_safe_config.php 这个文件,这是个配置文件。
比如:$$safe_gdopen = ’1,2,3,5,6,7′; 这个就是系统哪些地方开启验证码。与[验证码安全设置]界面是一对一的关系。
所以,如果当我们管理后台想关闭验证码(如果验证码无法正确输入,不支持GB库)的时候,只需要打开data\safe\inc_safe_config.php 将$$safe_gdopen = ’1,2,3,5,6,7′; 中的6,7删除即可。不必去进行繁琐的设置
B、取消掉验证码
分为两步:
打开dede目录下的 login.php 找到:
if($$validate==” || $$validate != $$svali)
替换为:
if( false )
然后,在模板dede/templets/login.htm里去掉以下验证码的具体HTML代码:
<li><span>验证码:</span>
<input name=”validate” type=”text” id=”vdcode” style=’width:50px;text-transform:uppercase;’ />
<img id=”vdimgck” src=”../include/vdimgck.php” src="http://www.feizhiyue.cn/uploads/allimg/180514/1-1P514223929606.jpg" style="width: 646px; height: 264px;" />
D、只显示背景不显示字母
这种情况验证码只显示背景 不显示字母,解决办法:
打开验证码生成文件 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()函数没有成功的执行导致了验证码只显示背景 不显示字母
具体原因为 字体文件路径不对.解决方法
1确认include/data/fonts/ 里面存在字体文件 默认为ggbi.ttf
2在for($$i=0;$$i<$$rndcodelen;$$i++) 上一行 加上如下代码:
$$font_file= str_replace("\\","/",$$font_file);
即把字体文件路径中反斜杠替换成斜杠 因为我们知道反斜杠有转译字符的功能,
$$font_file 路经大体为 盘符:\appserv\www 系统错误的把反斜杠 当作转义用了 导致$$font_file也就不是一个路径了 所以Imagettftext()函数总是返回错误
加上$$font_file= str_replace("\\","/",$$font_file);即可解决
出现这种情况的具体原因为 字体文件路径不对.解决方法
1确认include/data/fonts/ 里面存在字体文件 默认为ggbi.ttf
2在for($$i=0;$$i<$$rndcodelen;$$i++) 上一行 加上如下代码:
$$font_file= str_replace("\\","/",$$font_file);
即把字体文件路径中反斜杠替换成斜杠 因为我们知道反斜杠有转译字符的功能,
$$font_file 路经大体为 盘符:\appserv\www 系统错误的把反斜杠 当作转义用了 导致$$font_file也就不是一个路径了 所以Imagettftext()函数总是返回错误
加上$$font_file= str_replace("\\","/",$$font_file);即可解决
TAG标签: