dedecms织梦系统后台验证码图片不显示的解决方法

网站迁移后,dedecms织梦系统后台验证码图片不显示的解决方法
通用解决方案-取消后台验证码功能
因为没有验证码,不能进后台,所以修改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) 既验证码为数字或英文

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

打完收工。

时间: 2024-08-02 11:01:53

dedecms织梦系统后台验证码图片不显示的解决方法的相关文章

ecshop验证码图片无法显示终极解决办法

ecshop验证码图片无法显示终极解决办法 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2014-06-06 客户在安装好ecshop之后所有前台的证码不显示,后台可以显示,ECSHOP开发中心总结了解决办法分享给各位朋友. 可以在后台有,前台不显示 打开includes/init.php文件,将如下这段代码屏蔽即可. /* 判断是否支持 Gzip 模式 */if (!defined(‘INIT_NO_SMARTY’) && gzip_enabled())

采集百度搜寻结果,图片不显示的解决方法

1.根据关键字采集百度搜寻结果 根据关键字采集百度搜寻结果,可以使用curl实现,代码如下: <?php function doCurl($url, $data=array(), $header=array(), $timeout=30){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_R

dedecms(织梦) 获取文章全部图片的方法

最近在dedecms二次开发中 需要调用一片普通文章内的全部图片 方法思路有很多 这里分享下其中一个 环境 织梦版本: DedeCMS V5.7 SP1正式版 发布日期: 2016-09-06(最新版 其他版应该通用) PHP: 7.0.2(应该也通用) MySql: 5.6(5.2以上应该都同意) 代码 1.找到文件: 织梦根目录/include/extend.func.php 在最下方添加 /*几个形参: $aid (文章id) $num (调用图片的数量) $style (两种调用样式)*

织梦开启二级域名(多站点)内容页图片无法显示的解决方法

用织梦建站时,有时候我们会给某栏目绑定二级域名,并开启织梦Dedecms开启多站点支持.但这样该栏目的文章中的图片就会无法显示了,这主要是因为织梦默认状况下,文章中调用图片的路径是相对路径,我们绑定了二级域名,导致图片路径错误,不能正常访问到图片. 解决方法很简单,思路就是让文章内容中的图片路径都用绝对路径调用.我们要做的操作主要针对两部分文章,第一部分是已经生成的文章图片路径更改.第二部分是让新生成的图片路径默认成绝对路径. 一.把已经生成的文章中的图片路径改成绝对路径 1.进入织梦后台--核

织梦网站搬家,数据库无法导入的解决方法

网站的服务器总是出问题,对SEO优化有很大的影响,现在很多的网站都是用织梦做的,网站搬家的时候需要把数据库重新导入到新的服务器里边,但是在导入的过程中有时会出错,很多朋友不知道该怎么解决,今天给大家详细说明一下. 数据库导入错误,是因为两个服务器里边的数据库版本不一样,新服务器无法读取识别,影响数据库读取的原因就是[dede_purview]这张表有问题. 大家在导出原服务器数据的时候,先导出除这张表之外的其他数据库表,然后导入到新服务器的数据库里边.这张表单独导出.导出之后用记事本打开,看到如

dedecms织梦设置为动态静态页面和文章的方法

可能你会遇到这样的问题,有很多栏目全部要从动态变成静态,里面的文章也要静态化,如何更快捷的设置dede的静态化或者动态化呢? 我们可以运用sql语句来操作,后台--SQL命令行工具, SQL语句: DEDE整站动态化: 将所有文档设置为“仅动态”, update dede_archives set ismake=-1 将所有栏目设置为“使用动态页”, update dede_arctype set isdefault=-1 DEDE整站静态化: 将所有文档设置为“生成HTML”, update

PHP 生成验证码(+图片没有显示的解决办法)

今天有需要用到验证码,就敲了个,毕竟用途比较广,所以打算把代码留下来,以后肯定用得上的.当然,今天在做的时候也是有一些问题的,分享出来吧,记录自己所犯的错误,避免以后再掉坑里. 先给个效果图(下面的真的是图): 再上完整的代码吧: 1 <?php 2 // 开启 session 3 session_start(); 4 5 // 丢弃输出缓冲区的内容 ** 6 ob_clean(); 7 8 // 1 创建画布 9 $img = imagecreatetruecolor(100, 30); 10

还原dede数据后系统基本参数空白无显示的解决方法

有时dedecms开发的网站在更换空间还原数据后,出现“系统基本参数”空白,而且可以看到tag也没有了. 大家不妨看看后台“数据库备份/还原”处,已经还原后的表格中dede_sysconfig.dede_sys_set .(dede_taglist)记录数为0. 其实解决的方法很简单,我们从头说起: 首先在原来空间将数据备份,并上传到新空间,在data/backupdata/文件夹里. 首先更换空间后,重新安装,如果你的网站根目录里还有install文件夹(如果已经删掉了,那就重新下载个程序,把

dedecms织梦添加ueditor百度编辑器(支持本地图片水印)

本站所有附件均为UTF-8版本,GBK版本的童学请自行转码: 教程最下面有解决栏目内容添加失败的解决方法和本地上传图片加水印方法. 最终效果 1.直接到百度编辑器官方下载PHP对应的版本 ueditor官方地址:http://ueditor.baidu.com/website/download.html 2.dedecms 程序 include文件夹下,创建 ueditor 文件夹 把下载到的ueditor文件扔进去(index.html不要) 3.include\inc\inc_fun_fun