织梦dedeCMS采集文章后导出为仅动态的解决方案

资源来源网络,如需授权,请更换源码,模块仅供学习,如需商用请购买正版授权,本栏目不提供技术服务!
如遇蓝奏网盘打不开lanzous替换成lanzoux尝试!

  想要让DedeCMS采集文章后,直接导出成仅动态的类型,而不是未生成?按照下面步骤即可实现。

  登陆FTP,寻找 dede/co_export.php 文件,找到如下代码:

  //插入数据库

  $rs=$dsql->ExecuteNoneQuery($indexSql);

  if($rs)

  {

  $aid=$dsql->GetLastID();

  $mainSql=str_replace(‘@aid@’,$aid,$mainSql);

  $addSql=str_replace(‘@aid@’,$aid,$addSql);

  $mainSql=ereg_replace(‘@([a-z0-9]{1,})@’,”,$mainSql);

  $addSql=ereg_replace(‘@([a-z0-9]{1,})@’,”,$addSql);

  $rs=$dsql->ExecuteNoneQuery($mainSql);

  if(!$rs)

  {

  echo “导入 ‘$title’ 时错误:”.$dsql->GetError().”

  ”;

  $dsql->ExecuteNoneQuery(“Delete From `arctiny` where id=’$aid’ “);

  }

  else

  {

  $rs=$dsql->ExecuteNoneQuery($addSql);

  if(!$rs)

  {

  echo “导入 ‘$title’ 时错误:”.$dsql->GetError().”

  ”;

  $dsql->ExecuteNoneQuery(“Delete From `arctiny` where id=’$aid’ “);

  $dsql->ExecuteNoneQuery(“Delete From `$maintable` where id=’$aid’ “);

  }

  }

  }

  $dsql->ExecuteNoneQuery(“update `co_htmls` set isexport=1 where aid=’$exid’ “);

  }

  请将修改为如下代码(直接替换即可)

  $dsql->ExecuteNoneQuery(“update `archives` set ismake=-1 where id=’$aid’ “);

  最近把小站更新到v5.7 SP1版本,结果发现谷歌联盟和百度联盟的广告都不能显示。对比了一下之前版本的首页源码,发现更新后的系统中,广告代码双引号前均多了一个反斜杠。在网上搜了一下,没有找到解决方法,只好自己排查,终于发现了问题所在。我在这里把解决方法分享出来,让各位站长少走些弯路。

  找到ad_add.php文件第30行,把这段代码:

  复制代码

  if($normbody[‘style’]==’code’)

  {

  $normbody=addslashes($normbody[‘htmlcode’]);

  }

  改成如下代码:

  复制代码

  if($normbody[‘style’]==’code’)

  {

  $normbody=$normbody[‘htmlcode’];

  }

  注:addslashes函数会在指定的预定义字符前添加反斜杠,主要是对一些特殊字符进行转义。

  修改完后保存,然后上传到服务器,再添加的广告就能正常显示了。

  因为反斜杠是在广告代码插入到数据库之前添加的,所以数据库中之前添加的广告代码不会变(反斜杠依然存在)。只要把之前添加的广告都删除,然后重新添加就可以了。当然,你也可以直接在数据库中手工把每个广告的反斜杠都去掉。

  用dedecms 系统做网站的朋友特别多,dedecms功能强大,除了安全是一个问题外,tags标签静态化问题困扰很多朋友,湖哥为了解决一个网站的tags标签静态化问题找了很多文章,也试了很多次,终于在今天解决了这个问题:

  1.dedecms版本 5.7 sp1 GBK

  2.服务器:windows 2008 iis7

  话不多说,开始!

  目标:我们要使原来tags.php?/3qshop/ 变动为/tags/3qshop.html 并且为伪静态,为什么要为伪静态?因为我们的关键词(tags)太多,比真正静态节省空间。

  那么我们要做如下工作,记得一步一步来哦!

  第1步:

  首先找到/include/taglib/tag.lib.php中,在87行找到

  $row[‘link’]=$cfg_cmsurl.”/tags?”.urlencode($row[‘keyword’]);

  将其修改为:

  $row[‘link’]=$cfg_cmsurl.”/tags/”.urlencode($row[‘keyword’]).”.html”;

  第2步:

  修改分页代码部分

  修改include/arc.taglist.class.php,找到分页函数,将其更换为:

  注意:从429行 —->541行 用以下内容替换!

  (提示:网上有文章中讲的以下代码中的”pageinfo”是错误的,应该为\”pageinfo\”,不然会有错误提示哦!已经代码测试OK!)

  function GetPageListDM($list_len,$listitem=”info,index,end,pre,next,pageno”)

  {

  $prepage=””;

  $nextpage=””;

  $prepagenum=$this->PageNo – 1;

  $nextpagenum=$this->PageNo + 1;

  if($list_len==”” || preg_match(“/[^0-9]/”, $list_len))

  {

  $list_len=3;

  }

  $totalpage=$this->TotalPage;

  if($totalpage <=1 && $this->TotalResult > 0)

  {

  return “共1页/”.$this->TotalResult.”条“;

  }

  if($this->TotalResult==0)

  {

  return “共0页/”.$this->TotalResult.”条“;

  }

  $maininfo=”共{$totalpage}页/”.$this->TotalResult.”条rn”;

  $purl=$this->GetCurUrl();

  $basename=basename($purl);

  $tmpname=explode(‘.’, $basename);

  $purl=str_replace($basename, ”, $purl).urlencode($this->Tag);

  //var_dump($purl);exit;

  //$purl .=”?/”.urlencode($this->Tag);

  //获得上一页和下一页的链接

  if($this->PageNo !=1)

  {

  $prepage.=”

  • 上一页
  • rn”;

      $indexpage=”

  • 首页
  • rn”;

      }

      else

      {

      $indexpage=”

  • 首页
  • rn”;

      }

      if($this->PageNo!=$totalpage && $totalpage>1)

      {

      $nextpage.=”

  • 下一页
  • rn”;

      $endpage=”

  • 末页
  • rn”;

      }

      else

      {

      $endpage=”

  • 末页
  • rn”;

      }

      //获得数字链接

      $listdd=””;

      $total_list=$list_len * 2 + 1;

      if($this->PageNo >=$total_list)

      {

      $j=$this->PageNo – $list_len;

      $total_list=$this->PageNo + $list_len;

      if($total_list > $totalpage)

      {

      $total_list=$totalpage;

      }

      }

      else

      {

      $j=1;

      if($total_list > $totalpage)

      {

      $total_list=$totalpage;

      }

      }

      for($j; $j<=$total_list; $j++)

      {

      if($j==$this->PageNo)

      {

      $listdd.=”

  • $j
  • rn”;

      }

      else

      {

      $listdd.=”

  • “.$j.”
  • rn”;

      }

      }

      $plist=”;

      if(preg_match(‘/info/i’, $listitem))

      {

      $plist .=$maininfo.’ ‘;

      }

      if(preg_match(‘/index/i’, $listitem))

      {

      $plist .=$indexpage.’ ‘;

      }

      if(preg_match(‘/pre/i’, $listitem))

      {

      $plist .=$prepage.’ ‘;

      }

      if(preg_match(‘/pageno/i’, $listitem))

      {

      $plist .=$listdd.’ ‘;

      }

      if(preg_match(‘/next/i’, $listitem))

      {

      $plist .=$nextpage.’ ‘;

      }

      if(preg_match(‘/end/i’, $listitem))

      {

      $plist .=$endpage.’ ‘;

      }

      return $plist;

      }

      第3步:

      设置伪静态规则:

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      

      把以上内容保存为:web.config 放到网站根目录!

      第4步:

      生成文章,浏览!大功告成?错,有可能你会出现以下错误!

      系统无此标签,可能已经移除!

      你还可以尝试通过搜索程序去搜索这个关键字:前往搜索>>

      如果你的浏览器没反应,请点击这里…

      解决办法如下:

      在网站根目录下找到tags.php 此文件,将以下代码替换掉:

      $tag=trim($_SERVER[‘QUERY_STRING’]);

      换成

      $tag=strtolower(trim($_SERVER[‘QUERY_STRING’]));

      出现这个问题的原因是IIS伪静态中文转码为UTF8,解决方法就是在tags.php中加入判断UTF8编码的语句,如果是则转换为GBK,这样就可以解决了

      方法:

      1.把以下代码加入到根目录下tags.php中的18行下面,也就是if(isset($tags[2])) $PageNo=intval($tags[2]);下面哦:

      function is_utf8($tag)

      {

      if (preg_match(“/^([“.chr(228).”-“.chr(233).”]{1}[“.chr(128).”-“.chr(191).”]{1}[“.chr(128).”-“.chr(191).”]{1}){1}/”,$tag)==true || preg_match(“/([“.chr(228).”-“.chr(233).”]{1}[“.chr(128).”-“.chr(191).”]{1}[“.chr(128).”-“.chr(191).”]{1}){1}$/”,$tag)==true || preg_match(“/([“.chr(228).”-“.chr(233).”]{1}[“.chr(128).”-“.chr(191).”]{1}[“.chr(128).”-“.chr(191).”]{1}){2,}/”,$tag)==true)

      {

      return true;

      }

      else

      {

      return false;

      }

      }

      2.在第25行上面加入以下语句,也就是在$tag=FilterSearch(urldecode($tag));上面加入,记得这里是上面哦!

      if(is_utf8($tag)==1) { $tag=iconv(“utf-8″,”gbk”,$tag); }

      这个作用就是调用上面的函数判断编码 如果是 utf8则转为gbk;

      到此,tags伪静态问题全面完美解决!

      用dedecms做了一个站,换服务器后,发现后台登录不了,显示一片空白,在网上找了些方法如:

      找到:include/common.inc.php文件,打开,查找程序代码:

      //error_reporting(E_ALL);

      error_reporting(E_ALL || ~E_NOTICE);

      替换为:

      error_reporting(E_ALL);

      //error_reporting(E_ALL || ~E_NOTICE);

      但是不起作用,后台还是一片空白,也没有提示错误。

      在一步一步排查下 发现include/common.inc.php文件中 含有

      define(‘PINGRPC2’, 1);

      include_once DEDEINC.’/ping.RPC2.php’;

      原来是我在网站上加有ping插件惹的问题,注释掉后,网站正常了!

      生成静态的时候,经常会遇到“模板文件不存在,无法解析文 档!”的问题。很多朋友试过论坛里很多方法,都是针对某些人可以解决,某些人的问题依旧,为什么呢?其实问题很可能确实是多种多样的,表现结果却是一样, 所以,问题的原因就不好找了。下面介绍一个方法方便定位错误的地方:s200.CN

      直接去Include文件夹里搜索“模板文件不存在,无法解析文档”这串字符。找到以下五个文件:

      arc.archives.class.php

      arc.listview.class.php

      arc.sglistview.class.php

      arc.specview.class.php

      arc.taglist.class.php

      (1)如果是生成栏目时提示这个错,那么在arc.listview.class.php中

      echo “模板文件不存在,无法解析文档!”;

      修改成:echo “模板文件不存在,无法解析文档!.$tempfile” ;

      模板文件不存在,无法解析文档

      这样,就能在生成静态文件的时候,确切的知道是哪个文档或者模板文件出错了:

      模板文件不存在,无法解析文档2

      (2)如果是生成文档页面出现这个错误提示,打开arc.archives.class.php这个文件,找到第484行。

      修改一下报错的代码:echo “模板文件不存在,无法解析文档!”; Dedecms5.6使用教程 -js200.CN

      修改成:echo “模板文件不存在,无法解析文档!” .$this->ArcID ;

      这样可以返回第一个错误的文章的ID,于是,再生成时我得到了这个文章ID,打开这个文章编辑,发现这篇文章居然没有设置分类,应该是采集入库的时候没有设置分类,设置文档栏目后问题解决!

      今天更新网站时dedecms系统时,遇到一个问题:DedeTag Engine Create File False 出现这样的提示。

      其实这也不算是什么错误,我个人觉得最重要的一点就是根目录下没有给写权限。当然,我用的是Linux系统。我直接给了777权限之后就可以了。

      第一种情况:站点、文件夹权限不足造成无法建立文件

      这种情况的出现,一方面可能是Apache设置的读写权限较严格,另一方面原因可能是使用者通过服务器或FTP对一些文件夹设置了错误的读写权限造成。这时候,只需修改网站根目录或相关栏目的目录上修改权限为755即可解决。

      解决办法:

      第一步、定位出错的文件,即查找生成什么文件时出的问题。

      方法:修改 include/dedetag.class.php文件,搜索”DedeTag Engine Create File False“,会找到以下代码

      $fp=@fopen($filename,”w”) or die(“DedeTag Engine Create File False”);

      修改成

      $fp=@fopen($filename,”w”) or die(“DedeTag Engine Create File False:$filename”);

      重新生成栏目或者文档时,即可提示当前文件信息。

      第二步、检查是否有写入权限,windows服务器请给予写入权限,linux服务器请给予777权限。如果目录或者文件不存在,请手工建立。

      常见的错误情况有:data目录没有写入权限,html静态文件目录没有写入权限,index.html首页静态文件没有写入权限。

      此时在进行生成栏目或者页面HTML操作,即可顺利进行。

      第二种情况:列表、频道、文章等命名规则未填写或填写错误

      此种情况较为少见,因为初级用户一般不会去修改这些东西,情况可以大致分为:

      命名规则未填写(即为空)

      解决方法:只需填好相应的规则即可,重新选择栏目类型,也可以快速自动填写。

      命名规则中含有非法字符

      解决方法:将非法字符替换或删除。

      命名规则设置错误

      例如:命名列表页为{typedir}/{tid}.html,这种命名方式对列表只有一页的栏目是正常的,如果列表是两页或两页以上时,由于进程冲突,生成栏目就会出现 DedeTag Engine Create File False 的提示。

      解决方法:此时只需要增加{page}变量到名称中即可解决问题。

      生成文件的层次不对

      例如设置列表文件要在列表{typedir}目录下,不能向下再有目录比如:{typedir}/list{tid}{page}.html是对的,可以生成但是如果设置为 {typedir}/list/{tid}{page}.html这样将会出错

      第三种情况:发布文章后将栏目改为了“外部链接”类型

      在某个栏目里发了几篇文章,后来把这个栏目改成外连接了,更新文档时,系统还会更新这个栏目下的那几篇文章,但地址是外连接,所以无法生成文件,由此产生DedeTag Engine Create File False提示

      解决方法:把栏目改回的目录,把文章删除,再改回外部链接类型。

      默认织梦的首页没有设置高亮属性,只要其他栏目可以。以下代码可以解决这个问题:

      复制代码

      

      (@me==””)? @me=” class=’hover'”:@me=””;{/dede:field}> 主页

    {dede:channel type=’top’ row=’10’ currentstyle=”

  • ~typename~
  • “}

  • [field:typename/]
  •   {/dede:channel}

      以上蓝色加粗的代码就是判断当前栏目是否是首页,如果是首页则加上class=’hover’,否则就不加,以此来达到想要的效果。

      论坛上很多人都反馈说在后台添加新变量的时候会出现 “Request var not allow!” 的BUG错误,本文主要就是介绍如何去解决这个问题!下面看具体操纵:

      在DEDE根目录打开 include/common.inc.php 文件,查找到以下内容:

      //检查和注册外部提交的变量

      复制代码

      function CheckRequest(&$val) {

      if (is_array($val)) {

      foreach ($val as $_k=>$_v) {

      CheckRequest($_k);

      CheckRequest($val[$_k]);

      }

      } else

      {

      if( strlen($val)>0 && preg_match(‘#^(cfg_|GLOBALS)#’,$val) )

      {

      exit(‘Request var not allow!’);

      }

      }

      }

      将以上内容替换成以下内容:

      //检查和注册外部提交的变量

      复制代码

      function CheckRequest(&$val) {

      if (is_array($val)) {

      foreach ($val as $_k=>$_v) {

      if($_k==’nvarname’) continue;

      CheckRequest($_k);

      CheckRequest($val[$_k]);

      }

      } else

      {

      if( strlen($val)>0 && preg_match(‘#^(cfg_|GLOBALS)#’,$val) )

      {

      exit(‘Request var not allow!’);

      }

      }

      }

      修改完了之后保存,再去后台试试添加新变量。

      本文详细分析了DEDECMS后台无法登陆并跳转回登陆界面的解决方法。分享给大家供大家参考。具体方法如下:

      一、问题:

      网站已经运行了很久,前些天突然在登陆的时候提示密码不正确,而且不管怎么试,都是无法登陆.

      二、解决方法:

      于是在网上找来了重置密码的脚本,几经测试,终于重置了密码.之前出现过验证码出错的问题,关闭了验证码功能.于是在万分高兴开始登陆的时候发现,每次登陆都卡在这里,然后跳回登陆界面.

      地址为:login.php?gotopage=/dede/index.php

      在登陆界面输入账号密码后会有3-5秒的卡顿才会进入下面的页面,然后再卡顿3-5秒就跳回登陆界面.

      对此,列出几点供大家参考:

      1、修改DATA和sessions的目录属性为可写,即(777).

      2、清空sessions内除index.html以外的所有文件.

      3、清除IE缓存:更换浏览器,火狐,谷歌.

      4、在include/config.base.php里修改参数.

      5.最重要的一个原因,当你网站空间不够用或不足时,会有此种现象,便当虚拟主机后台检查下还有多少剩于空间可用吧!

      希望本文所述对大家的dedecms网站建设有所帮助。

      不知道用dedeCMS的问答系统的朋友们有木有遇到”问题管理”和”答案管理”出现404页面的情况,如果你的服务器是linux系统,估计都遇到过的。大家都知道linux系统对大小写是非常敏感的,不想win系统不区分。

      好吧废话少说,解决问题重要。

      问题的原因是ask\control\admin\answer.PHP和ask\control\admin\asktype.php这2个文件中有一行$this->lurd=new lurd,调用include/lurd.class.php文件。lurd 是小写,lurd.class.php是大写写,导致文件无法找到。

      解决办法:先确认并修改ask\control\admin\answer.php和ask\control\admin\asktype.php这2个文件中的$this->lurd=new lurd均为大写就行了。

      如果服务器上禁用了fsockopen函数,则无法使用保存远程图片到本地的功能,只需要替换一下函数就可以了。

      找到/include/dedehttpdown.class.PHP 第507行

      复制代码

      $this->m_fp=@fsockopen($this->m_host, $this->m_port, $errno, $errstr,10);

      替换为

      复制代码

      $this->m_fp=@stream_socket_client($this->m_host . ‘:’ . $this->m_port, $errno, $errstr,10);

      由于DEDECMS对系统安全做的比较好,即使在后台开放了匿名投稿前台也无法匿名投稿,所以要匿名投稿需要修改一些代码。

      打开member/soft_add.PHP找到

      //考虑安全原因不管是否开启游客投稿功能,都不允许用户投稿

      复制代码

      CheckRank(0,0);

      if($cfg_mb_lit==’Y’)

      {

      ShowMsg(“由于系统开启了精简版会员空间,你访问的功能不可用!”,”-1″);

      exit();

      }

      注释掉以上代码即可实现匿名软件投稿

      织梦dede后台采集数据库批量替换安全确认码不显示完美解决方法如下。

      dede后台安全验证码不显示

      dede后台安全验证码不显示

      给你快捷的方法,ftp中找到在后台目录文件夹中找到sys_data_replace.php文件,搜索以下代码(大概在45行左右),按下面注释掉即可

      //if($validate==”” || $validate !=$svali)

      //{

      // ShowMsg(“安全确认码不正确!”, “javascript:;”);

      // exit();

      // }

      这样即可完美解决,dede后台采集数据库内容批量替换,验证码就不用填写,直接可以开始替换数据。

      大家在更新栏目或者文档的时候 经常碰到“dedecms模板文件不存在 无法解析文档”,出现这个问题,一般是你的模板没有选对导致的。

      如何了解自己的模板情况呢:

      1、可以通过模板的命名来大概区别,不同的设计师对模板的命名有差别,比如默认的织梦模板列表模板是list_article.htm 图集模板是list_image.htm ,对模板标签比较了解的,也可以打开模板查看下标签的写法就大概明白了。如果无法判断就尝试用方法2.

      2、方法1还是无法找到正确的模板,可以通过一个一个模板的更换尝试,这样比较浪费点时间,不对才菜鸟来说,是最好的办法了。

      模板的选择主要是列表模板、文章模板,如下图:

      dedecms模板文件不存在 无法解析文档

      温馨提示:大家最好去了解下织梦模板的常规命名名称,也许对您有帮助,不同织梦模板制作者对命名略不同。

      织梦系统我一直都是在用utf8版的,最近看重一个模板,就买了,可是上传到服务器发现系统基本设置下面不能保存中文,网上没找到很好的方法,自己看了一下,发现是网站编码的问题,我utf8的织梦在php5.4下就没问题,所以,要给表单中的字符转码。

      后台-系统基本参数无法保存中文 修改方法:

      dede\templets\sys_info.htm里面搜索

      htmlspecialchars($row[‘value’])

      替换成

      htmlspecialchars($row[‘value’],ENT_COMPAT ,’GB2312′)

      如果发现还有其他页面,也没办法保存中文,最好在dreamweaver下整站搜索htmlspecialchars($row[‘value’]),然后批量替换成htmlspecialchars($row[‘value’],ENT_COMPAT ,’GB2312′),这样就能保证系统的表单没问题。

      但是这个修改的方法,对编辑器中的中文没办法,还要修改编辑器,方法为:

      include/ckeditor/ckeditor_php5.php文件

      找到代码

      $out=“\n”;

      改成:

      $out=“\n”;

      还有标签也不显示,修改方法为:

      1、dede/article_add.php 和 dede/article_edit.php将

      $title=htmlspecialchars(cn_substrR($title,$cfg_title_maxlen));

      改成

      $title=htmlspecialchars(cn_substrR($title,$cfg_title_maxlen),ENT_COMPAT ,’GB2312’);

      这些都没问题后,发现 核心-批量维护-tag标签管理里面的中文标签全部都不显示了,真是麻烦,修改方法:

      打开/dede/templets/tags_main.htm

      找到:

      $fields[‘tag’]=htmlspecialchars($fields[‘tag’]);

      替换为

      $fields[‘tag’]=htmlspecialchars($fields[‘tag’],ENT_COMPAT ,’GB2312′);

      这样修改,tag标签就显示了。

      这样一修改,在php5.4下的gbk版织梦就不会出现编码的问题了。

      站长用织梦做站时常常发现织梦自由列表有个致命的问题:

      即修改“不使用目录默认主页”就永远不会自己勾选啦

      打开这个文件 makehtml_freelist_action.php

      搜索下面代码,也在最后一行

      $dsql->ExecuteNoneQuery(“Update `dede_freelist` set nodefault=’1′ where aid=’$startid’;”);

      修改成

      $dsql->ExecuteNoneQuery(“Update `dede_freelist` set nodefault=’0′ where aid=’$startid’;”);

      下面这个教程是错误的

      打开dede\templets \freelist_add.htm找到113行,把value=”1″改为value=”0″。

      再打开dede\templets \freelist_edit.htm找到89行,把value=”1″改为value=”0″。

      这样“不使用目录默认主页”就永远不会自己勾选啦。

      今天发布图片集时,上传图片提示FILEID:X错误,缩略图显示为红色Error,前几天还正常的,可以确定是这几天修改了系统文件造成的,dede图集后台上传图片报错,提示红色FILEID错误的处理办法。

      dede图集后台上传图片报错处理

      dedecms图集后台上传图片报错处理

      仔细检查是UTF-8版本BOM格式造成的,检查dedecms系统文件include/common.inc.php和/data/common.inc.php的文件格式,用dreamweaver打开以上文件检查,ctrl+j打开编码查看,去掉上图中红框里“包括unicode签名bom”前面的勾,保存,替换原来文件,问题解决。

      UTF-8编码的朋友,注意将格式调整为UTF-8 无 BOM格式,GBK编码的朋友,注意将格式调整为ANSI(使用NotePad++,菜单栏有一格式菜单,打开即可调整文件格式,当然也可以选择DW,Editeplus 云云)

      网上看到很多朋友遇到使用织梦程序一段时间后,发现上传图集时候老是失败,提示提示FILEID:X错误,缩略图显示为红色Error下面截图错误:

      图片集上传时提示错误信息

      这问题今天也让我头疼了半天,好好的怎么就出现这问题了,我最近好像没修改过啥文件了,最后找资料整理出了解决办法,分享给遇到该问题的朋友:分两步:

      第一步:查看一下你的include/common.inc.php 的文件格式UTF-8编码的朋友,注意将格式调整为UTF-8 无BOM格式,GBK编码的朋友,注意将格式调整为ANSI(使用NotePad++,菜单栏有一格式菜单,打开即可调整文件格式,当然也可以选择DW,Editeplus 云云)

      第二步:给大家提供一个缩略图修复文件,保存为a.php,放在网站根目录访问下就可以了。

      代码(红色部分)如下:

      

      //remove the utf-8 boms

      //by magicbug at gmail dot com

      if (isset($_GET[‘dir’])){ //config the basedir

      $basedir=$_GET[‘dir’];

      }else{

      $basedir=’.’;

      }

      $auto=1;

      checkdir($basedir);

      function checkdir($basedir){

      if ($dh=opendir($basedir)) {

      while (($file=readdir($dh)) !==false) {

      if ($file !=’.’ && $file !=’..’){

      if (!is_dir($basedir.”/”.$file)) {

      echo “filename: $basedir/$file “;

      echo checkBOM(“$basedir/$file”).”

      ”;

      }else{

      $dirname=$basedir.”/”.$file;

      checkdir($dirname);

      }

      }

      }

      closedir($dh);

      }

      }

      function checkBOM ($filename) {

      global $auto;

      $contents=file_get_contents($filename);

      $charset[1]=substr($contents, 0, 1);

      $charset[2]=substr($contents, 1, 1);

      $charset[3]=substr($contents, 2, 1);

      if (ord($charset[1])==239 && ord($charset[2])==187 && ord($charset[3])==191) {

      if ($auto==1) {

      $rest=substr($contents, 3);

      rewrite ($filename, $rest);

      return (“BOM found, automatically removed.“);

      } else {

      return (“BOM found.“);

      }

      }

      else return (“BOM Not Found.”);

      }

      function rewrite ($filename, $data) {

      $filenum=fopen($filename, “w”);

      flock($filenum, LOCK_EX);

      fwrite($filenum, $data);

      fclose($filenum);

      }

      ?>

      将代码另存为.php,放在网站根目录下运行该文件就可以了。

      运行完毕后刷新后台,上传图片,就成功了!

      运行后记得更新下缓存:

      ☉首先声明,只要是我们的vip会员所有源码均可以免费下载,不做任何限制(了解更多)

      ☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印

      ☉本站只提供精品织梦源码,源码在于可用,不在多!!希望在这里找到你合适的。

      ☉本站提供的整站织梦程序,均带数据及演示地址。可以在任一源码详情页查看演示地址

      ☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。

      ☉如有其他问题,请加网站客服QQ(330921598)进行交流。

      前两天,在更新网站,发布文章上传图片的时候,遇到Upload filetype not allow !图片上传出错的情况!相信接触织梦程序的朋友几乎都会遇到这种情况吧!遇到dede织梦上传图片显示“Upload filetype not allow !”出错的情况改怎么办?要如何处理呢?

      下面乐晨针对自己解决的方法向刚接触织梦dedecms的新手朋友讲解一下,解决方法如下

      第一步:找到根目录“include”这个文件夹,点击进去

      第二步:找到“include”这个文件下的“uploadsafe.inc.php”文件,点击打开

      第三步:在打开“uploadsafe.inc.php”文件的大概第45行:找到$imtypes=array,并将其改为$imgtypes=array

      Upload filetype not allow!解决办法

      最后一步:把更改好的uploadsafe.inc.php文件上传到“include”这个文件下就可以解决了!

    ©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!
    织梦模板网 » 织梦dedeCMS采集文章后导出为仅动态的解决方案
    ☉免责声明:本站所有模板均来自用户分享和网络收集,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服,我们核实后会立即删除。
    ☉如果源码网盘地址失效!或有其他问题,请点我报错,谢谢合作!
    ☉人民币与积分汇率为1比10,即1元=10积分.有任何疑问请联系客服
    ☉如有其他问题,请加网站客服QQ(330921598)进行交流。
    ☉本站提供的源码、模板、软件工具等其他资源,都不包含技术服务,请大家谅解!
    ☉源码、模板等资源会随着技术、环境的升级而存在部分问题,还请慎重选择。

    发表评论

    加入织梦模板网永久VIP 海量资源免费下载

    立即查看 了解详情