织梦dedecms系统图片集上传时提示错误信息“(FILEID:1|2|3..)的解决办法

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

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

 
这问题今天也让我头疼了半天,好好的怎么就出现这问题了,我最近好像没修改过啥文件了,最后找资料整理出了解决办法,分享给遇到该问题的朋友:分两步: 
第一步:查看一下你的include/common.inc.php 的文件格式UTF-8编码的朋友,注意将格式调整为UTF-8 无BOM格式,GBK编码的朋友,注意将格式调整为ANSI(使用NotePad++,菜单栏有一格式菜单,打开即可调整文件格式,当然也可以选择DW,Editeplus 云云) 
第二步:给大家提供一个缩略图修复文件,保存为a.php,放在网站根目录访问下就可以了。 
代码(红色部分)如下: 
<?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 ("<span style="color:red;">BOM found, automatically removed.</span>"); 
  } else { 
   return ("<span style="color:red;">BOM found.</span>"); 
  } 

else return ("BOM Not Found."); 

function rewrite ($filename, $data) { 
$filenum = fopen($filename, "w"); 
flock($filenum, LOCK_EX); 
fwrite($filenum, $data); 
fclose($filenum); 

?> 
将代码另存为.php,放在网站根目录下运行该文件就可以了。 
运行完毕后刷新后台,上传图片,就成功了! 
运行后记得更新下缓存: 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/8c8fefecff9dd9703612a3ea590109c9.html