dede网站转移空间和数据库后后台验…

来源:互联网 发布:剑灵拳师捏脸数据 编辑:程序博客网 时间:2024/04/29 05:24
版本:V5.7
语言编码:GBK
是否更新最新补丁:已经更新
是否进行过修改:没有做
转移空间后,所有的配置都是正确的哦。验证码图片就看不到了,而且不是我一个人有这种显像了。

Dede后台验证码不显示或不正常分三种情况,下面来逐一分析
Dede后台验证码不显示情况一
Dede后台验证码不显示
 Dede后台验证码不显示情况二
Dede后台验证码不显示
 Dede后台验证码不显示情况三
Dede后台验证码不显示
 
通用解决方案---取消后台验证码功能
因为没有验证码 不能进后台 所以修改php文件源代码:
方法一:
打开dede/login.php 找到如下代码
   if(($validate=='' || $validate != $svali) &&preg_match("/6/",$safe_gdopen)){
       ResetVdValue();
       ShowMsg('验证码不正确!','login.php',0,1000);
       exit;
}
第一行替换为  if(false){         
好 问题解决 不输验证码后台直接进去
方法二
打开data/safe/inc.safe.config.php
把代码$safe_gdopen = '1,2,3,4,5,6,7'; 中的6,删除即可
Dede后台验证码不显示情况一分析
验证码需要GD库 请检查你的环境是否开启GD库 
 Dede后台验证码不显示情况二分析
验证码只显示背景 不显示字母
打开验证码生成文件 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);即可解决
Dede后台验证码不显示情况三分析
 Include/data/words/words.txt 文件不存在 
解决方案1 拷贝一个进去
              2找到代码   'word_type'  =>(int)$safe_codetype,   //1:数字  2:英文  3:单词
               换成'word_type' =>1  (或2) 既验证码为数字或英文
 
Dede后台验证码不显示 全部情况解决

如果原来可以显示后来取消验证码后再设置就无法显示,可以通过覆盖data与include目录试试

dede网站转移空间和数据库后后台验证码不显示! qq客服asp php 错误修改
QQ 1547479934
我的更多文章:
  • (2016-01-15 18:24:52)
  • (2016-01-15 18:23:22)
  • (2016-01-15 18:22:47)
  • (2016-01-15 18:18:45)
  • (2016-01-14 23:25:48)
0 0
原创粉丝点击